MGCL V10  V10
MGCL V10
 全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 フレンド グループ ページ
FPline.h
1 /********************************************************************/
2 /* Copyright (c) 2015 DG Technologies Inc. and Yuzi Mizuno */
3 /* All rights reserved. */
4 /********************************************************************/
5 #ifndef _MGFPline_HH_
6 #define _MGFPline_HH_
7 
8 class MGCurve;
9 class MGFSurface;
10 
16 
27 class MG_DLL_DECLR MGFPline{
28 
29 public:
30 
32 MG_DLL_DECLR friend std::ostream& operator<< (std::ostream& ostrm, const MGFPline& fpl);
33 
35 MGFPline():m_face(0),m_uvline(0){;};
36 
39  const MGFSurface* face,
40  MGCurve* uvline
41 ):m_face(face), m_uvline(uvline){;};
43 
47 MGFPline(const MGFPline& fpl);
48 
50 ~MGFPline();
51 
53 
56 MGFPline& operator= (const MGFPline& fpl);
57 
59 bool operator< (const MGFPline& fpl2)const;
60 bool operator> (const MGFPline& fpl2)const{return fpl2<(*this);};
61 bool operator<= (const MGFPline& fpl2)const{return !(fpl2<(*this));};
62 bool operator>= (const MGFPline& fpl2)const{return !((*this)<fpl2);};
63 bool operator== (const MGFPline& fpl2)const;
64 bool operator!= (const MGFPline& fpl2)const{return !operator==(fpl2);};
65 
67 
70 void change_range(
71  double t0,
72  double t1
73 );
74 
76 const MGFSurface* face()const{return m_face;};
77 
79 void reverse_direction();
80 
84 MGCurve* release_line();
85 
87 const MGCurve& uvline() const{return *m_uvline;}
88 MGCurve& uvline() {return *m_uvline;}
89 
90 private:
91  const MGFSurface* m_face;
92  mutable MGCurve* m_uvline;
93 
96 };
97  // end of GEORelated group
99 
100 #endif
MGCurve is an abstract class which represents a whole curve.
Definition: Curve.h:63
std::ostream & operator<<(std::ostream &ostrm, const MGisect &is)
Debug Function.
Definition: isect.h:95
MGFPline(const MGFSurface *face, MGCurve *uvline)
void constructor.
Definition: FPline.h:38
const MGFSurface * face() const
Get face's pointer.
Definition: FPline.h:76
MGFPline()
Definition: FPline.h:35
MGFSurface is an abstract class to provide the comman interfaces to MGFace and MGSurface.
Definition: FSurface.h:33
Face's (u,v) parameter value line.
Definition: FPline.h:27
const MGCurve & uvline() const
Return face's (u,v) parameter representation line.
Definition: FPline.h:87
MGCurve & uvline()
Definition: FPline.h:88