|
JunkBox_Lib++ (for Windows) 1.10.1
|
#include <Brep.h>

Public Member Functions | |
| BREP_CONTOUR (BREP_FACET *pr_facet) | |
| virtual | ~BREP_CONTOUR () |
| void | CloseData () |
| void | ConnectWing (BREP_WING *wing) |
| void | DisconnectWing (BREP_WING *wing) |
| void | DestroyWings () |
| void | CloseFacet (BREP_FACET *facet, double &emax, double &dmin, double &dmax) |
| void | ComputeNormal () |
| void | ComputeDirectRS () |
| BREP_WING * | CreateWing (BREP_VERTEX *vertex1, BREP_VERTEX *vertex2) |
Public Attributes | |
| BREP_FACET * | facet |
| BREP_WING * | wing |
| RBound< double > | rbound |
| Vector< double > | normal |
| TVector< double > | directR |
| △QRS 三角Contour衝突検出用 | |
| TVector< double > | directS |
| TVector< double > | directRS |
| int | dup_edge |
| 多重エッジの数. | |
| bool | collision |
| bool | hasCollisionVector |
| BREP_CONTOUR | ( | BREP_FACET * | pr_facet | ) |
Definition at line 309 of file Brep.cpp.
References BREP_CONTOUR::collision, BREP_FACET::ConnectContour(), BREP_CONTOUR::dup_edge, BREP_CONTOUR::facet, BREP_CONTOUR::hasCollisionVector, BREP_CONTOUR::rbound, RBound< T >::set(), and BREP_CONTOUR::wing.

|
virtual |
Definition at line 324 of file Brep.cpp.
References BREP_CONTOUR::DestroyWings(), BREP_FACET::DisconnectContour(), and BREP_CONTOUR::facet.

| void CloseData | ( | ) |
Definition at line 331 of file Brep.cpp.
References BREP_CONTOUR::ComputeDirectRS(), BREP_CONTOUR::ComputeNormal(), and BREP_CONTOUR::hasCollisionVector.
Referenced by jbxl::CreateContourByVertex().


| void CloseFacet | ( | BREP_FACET * | facet, |
| double & | emax, | ||
| double & | dmin, | ||
| double & | dmax ) |
Definition at line 434 of file Brep.cpp.
References BREP_CONTOUR::facet, RBound< T >::fusion(), BREP_WING::next, BREP_FACET::normal, BREP_VERTEX::point, BREP_FACET::rbound, BREP_VERTEX::tolerance, BREP_WING::vertex, and BREP_CONTOUR::wing.

| void ComputeDirectRS | ( | ) |
void BREP_CONTOUR::ComputeDirectRS()
衝突判定用ベクトルの計算
Definition at line 479 of file Brep.cpp.
References BREP_CONTOUR::directR, BREP_CONTOUR::directRS, BREP_CONTOUR::directS, BREP_CONTOUR::hasCollisionVector, BREP_WING::next, Vector< T >::norm(), BREP_WING::vertex, jbxl::Vertex2TVector(), and BREP_CONTOUR::wing.
Referenced by BREP_CONTOUR::CloseData(), and jbxl::IsCollisionContours().


| void ComputeNormal | ( | ) |
void BREP_CONTOUR::ComputeNormal()
Newells method により面の法線ベクトルを計算する.
Definition at line 458 of file Brep.cpp.
References BREP_WING::next, BREP_CONTOUR::normal, Vector< T >::normalize(), BREP_VERTEX::point, BREP_WING::vertex, BREP_CONTOUR::wing, Vector< T >::x, Vector< T >::y, and Vector< T >::z.
Referenced by BREP_CONTOUR::CloseData().


| void ConnectWing | ( | BREP_WING * | new_wing | ) |
void BREP_CONTOUR::ConnectWing(BREP_WING* new_wing)
新しい Wingを Contourのリストに追加する.
Definition at line 343 of file Brep.cpp.
References BREP_WING::contour, BREP_WING::next, BREP_WING::prev, and BREP_CONTOUR::wing.
Referenced by BREP_CONTOUR::CreateWing().

| BREP_WING * CreateWing | ( | BREP_VERTEX * | vertex1, |
| BREP_VERTEX * | vertex2 ) |
BREP_WING* BREP_CONTOUR::CreateWing(BREP_VERTEX* vertex1, BREP_VERTEX* vertex2)
vertex1をスタートVertexとした,Contour,Vertexに関連付けられらたWingを作る(必要なら新しいEdgeも).
作成時,指定するVertexは順序付けられていなければエラーとなる.
Definition at line 387 of file Brep.cpp.
References BREP_EDGE::complete, BREP_CONTOUR::ConnectWing(), jbxl::CreateWingWithoutContour(), DEBUG_MODE, BREP_WING::edge, jbxl::GetWingOtherSide(), BREP_WING::prev, PRINT_MESG, BREP_WING::vertex, and BREP_CONTOUR::wing.
Referenced by jbxl::CreateContourByVertex().


| void DestroyWings | ( | ) |
void BREP_CONTOUR::DestroyWings()
Contourに関連付けられた Wingをすべて破棄する.
Definition at line 419 of file Brep.cpp.
References jbxl::DestroyWing(), BREP_WING::prev, and BREP_CONTOUR::wing.
Referenced by BREP_CONTOUR::~BREP_CONTOUR().


| void DisconnectWing | ( | BREP_WING * | wing | ) |
Definition at line 362 of file Brep.cpp.
References BREP_WING::contour, BREP_WING::next, BREP_WING::prev, and BREP_CONTOUR::wing.
Referenced by jbxl::DestroyWing().

| bool collision |
Definition at line 182 of file Brep.h.
Referenced by BREP_CONTOUR::BREP_CONTOUR().
| TVector<double> directR |
Definition at line 177 of file Brep.h.
Referenced by jbxl::CollisionTriContour2D(), jbxl::CollisionTriContour3D(), BREP_CONTOUR::ComputeDirectRS(), and jbxl::IsInTriangle().
| TVector<double> directRS |
Definition at line 179 of file Brep.h.
Referenced by jbxl::CollisionTriContour2D(), jbxl::CollisionTriContour3D(), BREP_CONTOUR::ComputeDirectRS(), jbxl::IsInTriangle(), and jbxl::SamePlaneContour().
| TVector<double> directS |
Definition at line 178 of file Brep.h.
Referenced by jbxl::CollisionTriContour2D(), jbxl::CollisionTriContour3D(), BREP_CONTOUR::ComputeDirectRS(), and jbxl::IsInTriangle().
| int dup_edge |
Definition at line 181 of file Brep.h.
Referenced by BREP_CONTOUR::BREP_CONTOUR(), and jbxl::DupEdgeNumber().
| BREP_FACET* facet |
Definition at line 170 of file Brep.h.
Referenced by BREP_CONTOUR::BREP_CONTOUR(), BREP_CONTOUR::CloseFacet(), BREP_VERTEX::ComputeNormal(), BREP_FACET::ConnectContour(), jbxl::DeleteShortageWings(), BREP_FACET::DisconnectContour(), jbxl::FastDeleteFacet(), jbxl::FillShortageWings_Near(), jbxl::FillShortageWings_Next(), jbxl::IsCollisionContours(), jbxl::SetDeletableContoursByEdge(), BREP_CONTOUR::~BREP_CONTOUR(), and BREP_FACET::~BREP_FACET().
| bool hasCollisionVector |
Definition at line 183 of file Brep.h.
Referenced by BREP_CONTOUR::BREP_CONTOUR(), BREP_CONTOUR::CloseData(), BREP_CONTOUR::ComputeDirectRS(), and jbxl::IsCollisionContours().
| Vector<double> normal |
Definition at line 174 of file Brep.h.
Referenced by BREP_CONTOUR::ComputeNormal(), and jbxl::println_FacetAsciiSTL().
| RBound<double> rbound |
Definition at line 173 of file Brep.h.
Referenced by BREP_CONTOUR::BREP_CONTOUR().
| BREP_WING* wing |
Definition at line 171 of file Brep.h.
Referenced by BREP_CONTOUR::BREP_CONTOUR(), BREP_CONTOUR::CloseFacet(), jbxl::CollisionTriContour2D(), jbxl::CollisionTriContour3D(), jbxl::CommonVertex(), BREP_CONTOUR::ComputeDirectRS(), BREP_CONTOUR::ComputeNormal(), BREP_CONTOUR::ConnectWing(), BREP_CONTOUR::CreateWing(), BREP_CONTOUR::DestroyWings(), BREP_CONTOUR::DisconnectWing(), jbxl::DupEdgeNumber(), jbxl::IsInTriangle(), jbxl::println_FacetAsciiSTL(), and jbxl::SamePlaneContour().