CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
BrFace.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2024, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2024 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24
25
26#ifndef _INC_DDBRFACE_3F82D5A203C8_INCLUDED
27#define _INC_DDBRFACE_3F82D5A203C8_INCLUDED
28
29#include "Br/BrEntity.h"
30#include "Br/BrEnums.h"
31#include "Ge/GeSurface.h"
32#include "Ge/GeNurbSurface.h"
33
34#include "TD_PackPush.h"
35
36class OdCmEntityColor;
38class OdGeScale3d;
39
52{
53public:
54
61
66
72
90 const double* tolRequired = NULL,
91 double* tolAchieved = NULL) const;
92
97 bool getOrientToSurface() const;
105 bool getColor(OdCmEntityColor &color) const;
106
114 bool getMaterialID(OdUInt64 &id) const;
115
123 bool getMaterialString(OdString& strMatName) const;
124
135
137 {
138 kInheritProjection = 0, // Inherits *projection* from the current material's mapper.
139 kPlanar = 1, // Maps directly to XY coordinates.
140 kBox = 2, // Maps to planes perpendicular to major axes.
141 kCylinder = 3, // Maps to cylinder aligned with Z-axis.
142 kSphere = 4 // Maps to sphere aligned with Z-axis
143 };
144
146 {
147 kInheritTiling = 0, // Inherits *tiling* from the current material's mapper.
148 kTile = 1, // Repeats map along image axes.
149 kCrop = 2, // Crops map < 0.0 or > 1.0 on image axes.
150 kClamp = 3, // Clamps (stretches) map between 0.0 and 1.0 on image axes.
151 kMirror = 4 // Mirror the material map at every integer boundary.
152 };
153
155 {
156 kInheritAutoTransform = 0x0, // Inherits automatic *transform* from the current material/s mapper.
157 kNone = 0x1, // No automatic *transform*.
158 kObject = 0x2, // Adjusts the mapper *transform* to align with and fit the current object.
159 kModel = 0x4, // Multiples the mapper *transform* by the current block *transform*.
160
161 kPredefinedBim = 0x8, // Uses predefined uv coordinates for mapping (BIM-specific case).
162 };
163
164 bool getMaterialMapper(OdGeMatrix3d &mx, Projection &projection, Tiling& tiling, AutoTransform &autoTransform) const;
165
167
176 bool getFillPatternId(OdUInt64 &id) const;
177
191 bool getFillingAttributes(bool isFaceForward, OdGePoint2d& origin, double& rotAngle, bool& swapUv, OdGeScale3d& scaleUv, double& uDerScale) const;
192
205
212 const OdGiFill* getFill() const;
213
223 bool getFirstFaceRegion(OdBrFace& face) const;
224
234 bool getNextFaceRegion(OdBrFace& face) const;
235
246
247 bool getMaterialAttributes(OdGePoint2d& origin, double& angle) const;
248
250#ifdef OD_ADD_MOVE_CTOR_HAVE_DEF_DEL_FUNC
251 //DOM-IGNORE-BEGIN
252 OdBrFace(const OdBrFace&) = default;
253 OdBrFace& operator=(const OdBrFace&) = default;
254 OdBrFace(OdBrFace&&) = default;
255 OdBrFace& operator=(OdBrFace&&) = default;
256 //DOM-IGNORE-END
257#endif
258
260};
261
262#include "TD_PackPop.h"
263
264#endif /* _INC_DDBRFACE_3F82D5A203C8_INCLUDED */
265
OdBrErrorStatus
Definition BrEnums.h:39
#define ODBR_TOOLKIT_EXPORT
Definition BrExport.h:39
unsigned int OdUInt32
bool getOrientToSurface() const
bool getExtraFillingAttributes(OdGiFill *pFill) const
OdBrErrorStatus getArea(double &area, const double *tolRequired=NULL, double *tolAchieved=NULL) const
bool getFirstFaceRegion(OdBrFace &face) const
const OdGiFill * getFill() const
bool getMaterialString(OdString &strMatName) const
OdBrErrorStatus getSurfaceAsNurb(OdGeNurbSurface &nurb) const
OdBrErrorStatus getSurfaceType(OdGe::EntityId &surfaceType) const
@ kTile
Definition BrFace.h:148
@ kMirror
Definition BrFace.h:151
@ kInheritTiling
Definition BrFace.h:147
@ kClamp
Definition BrFace.h:150
@ kCrop
Definition BrFace.h:149
bool getNextFaceRegion(OdBrFace &face) const
bool getFillingAttributes(bool isFaceForward, OdGePoint2d &origin, double &rotAngle, bool &swapUv, OdGeScale3d &scaleUv, double &uDerScale) const
OdBrErrorStatus getSurfaceAsTrimmedNurbs(OdUInt32 &numNurbs, OdGeExternalBoundedSurface **&ppNurbs) const
bool getMaterialAttributes(OdGePoint2d &origin, double &angle) const
bool getMaterialID(OdUInt64 &id) const
OdGeSurface * getSurface() const
bool getColor(OdCmEntityColor &color) const
bool getMaterialMapper(OdGeMatrix3d &mx, Projection &projection, Tiling &tiling, AutoTransform &autoTransform) const
bool getFillPatternId(OdUInt64 &id) const
@ kPlanar
Definition BrFace.h:139
@ kCylinder
Definition BrFace.h:141
@ kSphere
Definition BrFace.h:142
@ kInheritProjection
Definition BrFace.h:138
AutoTransform
Definition BrFace.h:155
@ kPredefinedBim
Definition BrFace.h:161
@ kModel
Definition BrFace.h:159
@ kNone
Definition BrFace.h:157
@ kInheritAutoTransform
Definition BrFace.h:156
@ kObject
Definition BrFace.h:158
EntityId
Definition Ge.h:62