#ifndef __TRI_BREP_H #define __TRI_BREP_H /** @brief 三角Contour(Face)用ライブラリ ヘッダ for BREP @file TriBrep.h @author Fumi.Iseki (C) @attention このファイルの関数は Contour(=Face)が三角形であることを前提とする. */ #include "STL.h" DllExport CONTOUR* CreateContourByVector(FACE* face, VECTOR* v, bool special); DllExport CONTOUR* CreateContourByVertex(FACE* face, VERTEX** v, bool special); DllExport void CreateContoursRing(SOLID* solid); DllExport void CreateWingsRing(SOLID* solid); DllExport void CreateSurplusContoursRing(SOLID* solid); DllExport void CreateShortageWingsRing(SOLID* solid); DllExport void DeleteSurplusContours(SOLID* solid); DllExport void DeleteStraightEdges(SOLID* solid); DllExport void DeleteShortageWings(SOLID* solid) ; DllExport void FillShortageWings(SOLID* solid, int method, bool mode); DllExport int FillShortageWings_Next(SOLID* solid, bool mode); DllExport int FillShortageWings_Near(SOLID* solid, bool mode); DllExport bool PatchupContour(SHELL* shell, VERTEX** vert, bool mode); DllExport void JoinShortageWings(SOLID* solid); DllExport void SetMinVertex(BREP_VERTEX_RING* ring, VERTEX* vrtx); DllExport bool IsIncludeCompleteEdge(BREP_WING* wing); DllExport VERTEX* FindConnectEdgeVertex(VERTEX* wing); DllExport int DupEdgeNumber(CONTOUR* contour); DllExport void ReverseContours(SOLID* solid); DllExport void SetDeletableContoursByEdge(EDGE* edge); DllExport void FastDeleteFace(FACE* face); DllExport int IsAtLine(VERTEX** v); DllExport bool IsForbiddenEdge(VERTEX** vert); DllExport bool IsCollisionContours(SOLID* solid, CONTOUR* contour, CONTOUR** collision); DllExport bool CollisionTriContour3D(CONTOUR* contour1, CONTOUR* contour2); DllExport bool CollisionTriContour2D(CONTOUR* contour1, CONTOUR* contour2); DllExport bool IsInTriangle(CONTOUR* contour1, CONTOUR* contour2); DllExport int CommonVertex(CONTOUR* contour1, CONTOUR* contour2); DllExport bool SamePlaneContour(CONTOUR* contour1, CONTOUR* contour2, int& lineno); DllExport TVector ToTVector(BREP_VERTEX* v); DllExport int CreateSolidFromSTL(STLData* stldata, int fno, SOLID* solid, bool collision, bool special); DllExport bool IsConnectEdges(BREP_WING* wing1, BREP_WING* wing2); #endif