@itwin/core-geometry 3.6.0-dev.8 → 4.0.0-dev.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -1
- package/LICENSE.md +1 -1
- package/lib/cjs/Geometry.d.ts +28 -17
- package/lib/cjs/Geometry.d.ts.map +1 -1
- package/lib/cjs/Geometry.js +52 -25
- package/lib/cjs/Geometry.js.map +1 -1
- package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts +10 -6
- package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
- package/lib/cjs/curve/CurveChainWithDistanceIndex.js +29 -31
- package/lib/cjs/curve/CurveChainWithDistanceIndex.js.map +1 -1
- package/lib/cjs/curve/CurveCurve.d.ts +11 -8
- package/lib/cjs/curve/CurveCurve.d.ts.map +1 -1
- package/lib/cjs/curve/CurveCurve.js +16 -12
- package/lib/cjs/curve/CurveCurve.js.map +1 -1
- package/lib/cjs/curve/CurveCurveIntersectXY.d.ts +5 -1
- package/lib/cjs/curve/CurveCurveIntersectXY.d.ts.map +1 -1
- package/lib/cjs/curve/CurveCurveIntersectXY.js +11 -10
- package/lib/cjs/curve/CurveCurveIntersectXY.js.map +1 -1
- package/lib/cjs/geometry3d/Angle.d.ts +19 -0
- package/lib/cjs/geometry3d/Angle.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Angle.js +39 -0
- package/lib/cjs/geometry3d/Angle.js.map +1 -1
- package/lib/cjs/geometry3d/AngleSweep.d.ts +1 -0
- package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -1
- package/lib/cjs/geometry3d/AngleSweep.js +1 -0
- package/lib/cjs/geometry3d/AngleSweep.js.map +1 -1
- package/lib/cjs/geometry3d/CoincidentGeometryOps.d.ts +1 -0
- package/lib/cjs/geometry3d/CoincidentGeometryOps.d.ts.map +1 -1
- package/lib/cjs/geometry3d/CoincidentGeometryOps.js +3 -0
- package/lib/cjs/geometry3d/CoincidentGeometryOps.js.map +1 -1
- package/lib/cjs/geometry3d/GrowableXYArray.d.ts +1 -1
- package/lib/cjs/geometry3d/GrowableXYArray.js +1 -1
- package/lib/cjs/geometry3d/GrowableXYArray.js.map +1 -1
- package/lib/cjs/geometry3d/Matrix3d.d.ts +369 -254
- package/lib/cjs/geometry3d/Matrix3d.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Matrix3d.js +807 -660
- package/lib/cjs/geometry3d/Matrix3d.js.map +1 -1
- package/lib/cjs/geometry3d/OrderedRotationAngles.d.ts +71 -14
- package/lib/cjs/geometry3d/OrderedRotationAngles.d.ts.map +1 -1
- package/lib/cjs/geometry3d/OrderedRotationAngles.js +204 -114
- package/lib/cjs/geometry3d/OrderedRotationAngles.js.map +1 -1
- package/lib/cjs/geometry3d/Point2dVector2d.d.ts +1 -0
- package/lib/cjs/geometry3d/Point2dVector2d.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Point2dVector2d.js +1 -0
- package/lib/cjs/geometry3d/Point2dVector2d.js.map +1 -1
- package/lib/cjs/geometry3d/Point3dVector3d.d.ts +16 -16
- package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -1
- package/lib/cjs/geometry3d/Point3dVector3d.js +21 -18
- package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -1
- package/lib/cjs/geometry3d/Segment1d.d.ts +1 -1
- package/lib/cjs/geometry3d/Segment1d.js +1 -1
- package/lib/cjs/geometry3d/Segment1d.js.map +1 -1
- package/lib/cjs/geometry3d/YawPitchRollAngles.d.ts +49 -25
- package/lib/cjs/geometry3d/YawPitchRollAngles.d.ts.map +1 -1
- package/lib/cjs/geometry3d/YawPitchRollAngles.js +146 -50
- package/lib/cjs/geometry3d/YawPitchRollAngles.js.map +1 -1
- package/lib/cjs/numerics/Polynomials.d.ts +12 -0
- package/lib/cjs/numerics/Polynomials.d.ts.map +1 -1
- package/lib/cjs/numerics/Polynomials.js +14 -0
- package/lib/cjs/numerics/Polynomials.js.map +1 -1
- package/lib/cjs/polyface/PolyfaceBuilder.d.ts +5 -4
- package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -1
- package/lib/cjs/polyface/PolyfaceBuilder.js +50 -10
- package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
- package/lib/cjs/polyface/PolyfaceQuery.d.ts +82 -0
- package/lib/cjs/polyface/PolyfaceQuery.d.ts.map +1 -1
- package/lib/cjs/polyface/PolyfaceQuery.js +150 -1
- package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -1
- package/lib/cjs/polyface/multiclip/OffsetMeshContext.d.ts +202 -0
- package/lib/cjs/polyface/multiclip/OffsetMeshContext.d.ts.map +1 -0
- package/lib/cjs/polyface/multiclip/OffsetMeshContext.js +1038 -0
- package/lib/cjs/polyface/multiclip/OffsetMeshContext.js.map +1 -0
- package/lib/cjs/serialization/GeometrySamples.d.ts +4 -1
- package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -1
- package/lib/cjs/serialization/GeometrySamples.js +14 -6
- package/lib/cjs/serialization/GeometrySamples.js.map +1 -1
- package/lib/cjs/serialization/IModelJsonSchema.d.ts +1 -1
- package/lib/cjs/serialization/IModelJsonSchema.js.map +1 -1
- package/lib/cjs/topology/Graph.d.ts +113 -7
- package/lib/cjs/topology/Graph.d.ts.map +1 -1
- package/lib/cjs/topology/Graph.js +185 -7
- package/lib/cjs/topology/Graph.js.map +1 -1
- package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +38 -0
- package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts.map +1 -0
- package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js +82 -0
- package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -0
- package/lib/esm/Geometry.d.ts +28 -17
- package/lib/esm/Geometry.d.ts.map +1 -1
- package/lib/esm/Geometry.js +52 -25
- package/lib/esm/Geometry.js.map +1 -1
- package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts +10 -6
- package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
- package/lib/esm/curve/CurveChainWithDistanceIndex.js +30 -32
- package/lib/esm/curve/CurveChainWithDistanceIndex.js.map +1 -1
- package/lib/esm/curve/CurveCurve.d.ts +11 -8
- package/lib/esm/curve/CurveCurve.d.ts.map +1 -1
- package/lib/esm/curve/CurveCurve.js +16 -12
- package/lib/esm/curve/CurveCurve.js.map +1 -1
- package/lib/esm/curve/CurveCurveIntersectXY.d.ts +5 -1
- package/lib/esm/curve/CurveCurveIntersectXY.d.ts.map +1 -1
- package/lib/esm/curve/CurveCurveIntersectXY.js +11 -10
- package/lib/esm/curve/CurveCurveIntersectXY.js.map +1 -1
- package/lib/esm/geometry3d/Angle.d.ts +19 -0
- package/lib/esm/geometry3d/Angle.d.ts.map +1 -1
- package/lib/esm/geometry3d/Angle.js +39 -0
- package/lib/esm/geometry3d/Angle.js.map +1 -1
- package/lib/esm/geometry3d/AngleSweep.d.ts +1 -0
- package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -1
- package/lib/esm/geometry3d/AngleSweep.js +1 -0
- package/lib/esm/geometry3d/AngleSweep.js.map +1 -1
- package/lib/esm/geometry3d/CoincidentGeometryOps.d.ts +1 -0
- package/lib/esm/geometry3d/CoincidentGeometryOps.d.ts.map +1 -1
- package/lib/esm/geometry3d/CoincidentGeometryOps.js +3 -0
- package/lib/esm/geometry3d/CoincidentGeometryOps.js.map +1 -1
- package/lib/esm/geometry3d/GrowableXYArray.d.ts +1 -1
- package/lib/esm/geometry3d/GrowableXYArray.js +1 -1
- package/lib/esm/geometry3d/GrowableXYArray.js.map +1 -1
- package/lib/esm/geometry3d/Matrix3d.d.ts +369 -254
- package/lib/esm/geometry3d/Matrix3d.d.ts.map +1 -1
- package/lib/esm/geometry3d/Matrix3d.js +807 -660
- package/lib/esm/geometry3d/Matrix3d.js.map +1 -1
- package/lib/esm/geometry3d/OrderedRotationAngles.d.ts +71 -14
- package/lib/esm/geometry3d/OrderedRotationAngles.d.ts.map +1 -1
- package/lib/esm/geometry3d/OrderedRotationAngles.js +205 -115
- package/lib/esm/geometry3d/OrderedRotationAngles.js.map +1 -1
- package/lib/esm/geometry3d/Point2dVector2d.d.ts +1 -0
- package/lib/esm/geometry3d/Point2dVector2d.d.ts.map +1 -1
- package/lib/esm/geometry3d/Point2dVector2d.js +1 -0
- package/lib/esm/geometry3d/Point2dVector2d.js.map +1 -1
- package/lib/esm/geometry3d/Point3dVector3d.d.ts +16 -16
- package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -1
- package/lib/esm/geometry3d/Point3dVector3d.js +21 -18
- package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -1
- package/lib/esm/geometry3d/Segment1d.d.ts +1 -1
- package/lib/esm/geometry3d/Segment1d.js +1 -1
- package/lib/esm/geometry3d/Segment1d.js.map +1 -1
- package/lib/esm/geometry3d/YawPitchRollAngles.d.ts +49 -25
- package/lib/esm/geometry3d/YawPitchRollAngles.d.ts.map +1 -1
- package/lib/esm/geometry3d/YawPitchRollAngles.js +146 -50
- package/lib/esm/geometry3d/YawPitchRollAngles.js.map +1 -1
- package/lib/esm/numerics/Polynomials.d.ts +12 -0
- package/lib/esm/numerics/Polynomials.d.ts.map +1 -1
- package/lib/esm/numerics/Polynomials.js +14 -0
- package/lib/esm/numerics/Polynomials.js.map +1 -1
- package/lib/esm/polyface/PolyfaceBuilder.d.ts +5 -4
- package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -1
- package/lib/esm/polyface/PolyfaceBuilder.js +50 -10
- package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
- package/lib/esm/polyface/PolyfaceQuery.d.ts +82 -0
- package/lib/esm/polyface/PolyfaceQuery.d.ts.map +1 -1
- package/lib/esm/polyface/PolyfaceQuery.js +148 -0
- package/lib/esm/polyface/PolyfaceQuery.js.map +1 -1
- package/lib/esm/polyface/multiclip/OffsetMeshContext.d.ts +202 -0
- package/lib/esm/polyface/multiclip/OffsetMeshContext.d.ts.map +1 -0
- package/lib/esm/polyface/multiclip/OffsetMeshContext.js +1032 -0
- package/lib/esm/polyface/multiclip/OffsetMeshContext.js.map +1 -0
- package/lib/esm/serialization/GeometrySamples.d.ts +4 -1
- package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -1
- package/lib/esm/serialization/GeometrySamples.js +14 -6
- package/lib/esm/serialization/GeometrySamples.js.map +1 -1
- package/lib/esm/serialization/IModelJsonSchema.d.ts +1 -1
- package/lib/esm/serialization/IModelJsonSchema.js.map +1 -1
- package/lib/esm/topology/Graph.d.ts +113 -7
- package/lib/esm/topology/Graph.d.ts.map +1 -1
- package/lib/esm/topology/Graph.js +185 -7
- package/lib/esm/topology/Graph.js.map +1 -1
- package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +38 -0
- package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts.map +1 -0
- package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js +78 -0
- package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -0
- package/package.json +4 -4
|
@@ -114,7 +114,7 @@ export declare class PolyfaceBuilder extends NullGeometryHandler {
|
|
|
114
114
|
addPoint(xyz: Point3d): number;
|
|
115
115
|
/**
|
|
116
116
|
* Announce point coordinates.
|
|
117
|
-
* @deprecated Use addPoint instead.
|
|
117
|
+
* @deprecated in 3.x. Use addPoint instead.
|
|
118
118
|
*/
|
|
119
119
|
findOrAddPoint(xyz: Point3d): number;
|
|
120
120
|
/**
|
|
@@ -123,7 +123,7 @@ export declare class PolyfaceBuilder extends NullGeometryHandler {
|
|
|
123
123
|
addParamXY(x: number, y: number): number;
|
|
124
124
|
/**
|
|
125
125
|
* Announce uv parameter coordinates.
|
|
126
|
-
* @deprecated Use addParamXY instead.
|
|
126
|
+
* @deprecated in 3.x. Use addParamXY instead.
|
|
127
127
|
*/
|
|
128
128
|
findOrAddParamXY(x: number, y: number): number;
|
|
129
129
|
private static _workPointFindOrAddA;
|
|
@@ -155,7 +155,7 @@ export declare class PolyfaceBuilder extends NullGeometryHandler {
|
|
|
155
155
|
addParamInGrowableXYArray(data: GrowableXYArray, index: number): number | undefined;
|
|
156
156
|
/**
|
|
157
157
|
* Announce uv parameter coordinates.
|
|
158
|
-
* @deprecated Use addParamInGrowableXYArray instead.
|
|
158
|
+
* @deprecated in 3.x. Use addParamInGrowableXYArray instead.
|
|
159
159
|
*/
|
|
160
160
|
findOrAddParamInGrowableXYArray(data: GrowableXYArray, index: number): number | undefined;
|
|
161
161
|
/**
|
|
@@ -177,7 +177,7 @@ export declare class PolyfaceBuilder extends NullGeometryHandler {
|
|
|
177
177
|
addPointXYZ(x: number, y: number, z: number): number;
|
|
178
178
|
/**
|
|
179
179
|
* Announce point coordinates.
|
|
180
|
-
* @deprecated Use addPointXYZ instead.
|
|
180
|
+
* @deprecated in 3.x. Use addPointXYZ instead.
|
|
181
181
|
*/
|
|
182
182
|
findOrAddPointXYZ(x: number, y: number, z: number): number;
|
|
183
183
|
/** Returns a transform who can be applied to points on a triangular facet in order to obtain UV parameters. */
|
|
@@ -226,6 +226,7 @@ export declare class PolyfaceBuilder extends NullGeometryHandler {
|
|
|
226
226
|
private addIndexedTriangleColorIndexes;
|
|
227
227
|
/** Find or add xyzIndex and normalIndex for coordinates in the sector. */
|
|
228
228
|
private setSectorIndices;
|
|
229
|
+
private addSectorTriangle;
|
|
229
230
|
private addSectorQuadA01B01;
|
|
230
231
|
/** Add facets between lineStrings with matched point counts.
|
|
231
232
|
* * surface normals are computed from (a) curve tangents in the linestrings and (b)rule line between linestrings.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PolyfaceBuilder.d.ts","sourceRoot":"","sources":["../../../src/polyface/PolyfaceBuilder.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIrD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAKvD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE/E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAO,MAAM,+BAA+B,CAAC;AAEvE,OAAO,EAAW,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAIvF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAmG/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,qBAAa,eAAgB,SAAQ,mBAAmB;IACtD,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,QAAQ,CAAgB;IAChC,qEAAqE;IACrE,IAAW,OAAO,IAAI,aAAa,CAA0B;IAE7D,OAAO,CAAC,SAAS,CAAU;IAC3B,2EAA2E;IAC3E,IAAW,YAAY,IAAI,OAAO,CAA2B;IAC7D,4BAA4B;IACrB,aAAa,CAAC,QAAQ,GAAE,OAAc,GAAG,eAAe;IAK/D,sFAAsF;IAC/E,uBAAuB;IAE9B,OAAO;IAOP;;;OAGG;WACW,MAAM,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,eAAe;IAG9D,6CAA6C;IACtC,qBAAqB,CAAC,SAAS,EAAE,SAAS;IAIjD;;MAEE;IACK,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE;IAgB7F;;;OAGG;IACI,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAkBlF;;;;;;OAMG;IACI,oCAAoC,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IA6CpF;;OAEG;IACI,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAGrC;;;OAGG;IACI,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI3C;;OAEG;IACI,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAG/C;;;OAGG;IACI,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAIrD,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAoB;IACvD,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAqB;IACxD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAoB;IACnD;;;;OAIG;IACI,0BAA0B,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAUlI;;;;OAIG;IACI,gCAAgC,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAU7I;;;;OAIG;IACI,iCAAiC,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAU9I;;;;OAIG;IACI,yBAAyB,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAS1F;;;OAGG;IACI,+BAA+B,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIhG;;;;OAIG;IACI,0BAA0B,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK7I;;;;;OAKG;IACI,2BAA2B,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAc1J;;OAEG;IACI,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAG3D;;;OAGG;IACI,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAIjE,+GAA+G;IAC/G,OAAO,CAAC,8BAA8B;IAQtC,gDAAgD;IAChD,OAAO,CAAC,2BAA2B;IASnC;;;;;;OAMG;IACI,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE;IAuGrH;;;;;OAKG;IACH,OAAO,CAAC,0BAA0B;IAgBlC,kFAAkF;IAClF,OAAO,CAAC,0BAA0B;IAclC,oFAAoF;IACpF,OAAO,CAAC,2BAA2B;IAcnC,4EAA4E;IAC5E,OAAO,CAAC,0BAA0B;IAelC;;;;;;OAMG;IACI,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE;IAgEzH;;;OAGG;IACH,OAAO,CAAC,8BAA8B;IActC,gFAAgF;IAChF,OAAO,CAAC,8BAA8B;IAYtC,gFAAgF;IAChF,OAAO,CAAC,+BAA+B;IAYvC,gFAAgF;IAChF,OAAO,CAAC,8BAA8B;IAYtC,0EAA0E;IAC1E,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,mBAAmB;
|
|
1
|
+
{"version":3,"file":"PolyfaceBuilder.d.ts","sourceRoot":"","sources":["../../../src/polyface/PolyfaceBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -302,7 +302,7 @@ class PolyfaceBuilder extends GeometryHandler_1.NullGeometryHandler {
|
|
|
302
302
|
}
|
|
303
303
|
/**
|
|
304
304
|
* Announce point coordinates.
|
|
305
|
-
* @deprecated Use addPoint instead.
|
|
305
|
+
* @deprecated in 3.x. Use addPoint instead.
|
|
306
306
|
*/
|
|
307
307
|
findOrAddPoint(xyz) {
|
|
308
308
|
return this.addPoint(xyz);
|
|
@@ -315,7 +315,7 @@ class PolyfaceBuilder extends GeometryHandler_1.NullGeometryHandler {
|
|
|
315
315
|
}
|
|
316
316
|
/**
|
|
317
317
|
* Announce uv parameter coordinates.
|
|
318
|
-
* @deprecated Use addParamXY instead.
|
|
318
|
+
* @deprecated in 3.x. Use addParamXY instead.
|
|
319
319
|
*/
|
|
320
320
|
findOrAddParamXY(x, y) {
|
|
321
321
|
return this.addParamXY(x, y);
|
|
@@ -378,7 +378,7 @@ class PolyfaceBuilder extends GeometryHandler_1.NullGeometryHandler {
|
|
|
378
378
|
}
|
|
379
379
|
/**
|
|
380
380
|
* Announce uv parameter coordinates.
|
|
381
|
-
* @deprecated Use addParamInGrowableXYArray instead.
|
|
381
|
+
* @deprecated in 3.x. Use addParamInGrowableXYArray instead.
|
|
382
382
|
*/
|
|
383
383
|
findOrAddParamInGrowableXYArray(data, index) {
|
|
384
384
|
return this.addParamInGrowableXYArray(data, index);
|
|
@@ -418,7 +418,7 @@ class PolyfaceBuilder extends GeometryHandler_1.NullGeometryHandler {
|
|
|
418
418
|
}
|
|
419
419
|
/**
|
|
420
420
|
* Announce point coordinates.
|
|
421
|
-
* @deprecated Use addPointXYZ instead.
|
|
421
|
+
* @deprecated in 3.x. Use addPointXYZ instead.
|
|
422
422
|
*/
|
|
423
423
|
findOrAddPointXYZ(x, y, z) {
|
|
424
424
|
return this.addPointXYZ(x, y, z);
|
|
@@ -748,10 +748,29 @@ class PolyfaceBuilder extends GeometryHandler_1.NullGeometryHandler {
|
|
|
748
748
|
if (sector.uv)
|
|
749
749
|
sector.uvIndex = this._polyface.addParam(sector.uv);
|
|
750
750
|
}
|
|
751
|
+
addSectorTriangle(sectorA0, sectorA1, sectorA2) {
|
|
752
|
+
if (sectorA0.xyz.isAlmostEqual(sectorA1.xyz)
|
|
753
|
+
|| sectorA1.xyz.isAlmostEqual(sectorA2.xyz)
|
|
754
|
+
|| sectorA2.xyz.isAlmostEqual(sectorA0.xyz)) {
|
|
755
|
+
// trivially degenerate triangle !!! skip !!!
|
|
756
|
+
}
|
|
757
|
+
else {
|
|
758
|
+
if (this._options.needNormals)
|
|
759
|
+
this.addIndexedTriangleNormalIndexes(sectorA0.normalIndex, sectorA1.normalIndex, sectorA2.normalIndex);
|
|
760
|
+
if (this._options.needParams)
|
|
761
|
+
this.addIndexedTriangleParamIndexes(sectorA0.uvIndex, sectorA1.uvIndex, sectorA2.uvIndex);
|
|
762
|
+
this.addIndexedTrianglePointIndexes(sectorA0.xyzIndex, sectorA1.xyzIndex, sectorA2.xyzIndex);
|
|
763
|
+
this._polyface.terminateFacet();
|
|
764
|
+
}
|
|
765
|
+
}
|
|
751
766
|
addSectorQuadA01B01(sectorA0, sectorA1, sectorB0, sectorB1) {
|
|
752
767
|
if (sectorA0.xyz.isAlmostEqual(sectorA1.xyz) && sectorB0.xyz.isAlmostEqual(sectorB1.xyz)) {
|
|
753
768
|
// ignore null quad !!
|
|
754
769
|
}
|
|
770
|
+
else if (this._options.shouldTriangulate) {
|
|
771
|
+
this.addSectorTriangle(sectorA0, sectorA1, sectorB1);
|
|
772
|
+
this.addSectorTriangle(sectorB1, sectorB0, sectorA0);
|
|
773
|
+
}
|
|
755
774
|
else {
|
|
756
775
|
if (this._options.needNormals)
|
|
757
776
|
this.addIndexedQuadNormalIndexes(sectorA0.normalIndex, sectorA1.normalIndex, sectorB0.normalIndex, sectorB1.normalIndex);
|
|
@@ -828,12 +847,30 @@ class PolyfaceBuilder extends GeometryHandler_1.NullGeometryHandler {
|
|
|
828
847
|
}
|
|
829
848
|
const numPoints = pointA.length;
|
|
830
849
|
for (let i = 1; i < numPoints; i++) {
|
|
831
|
-
if (
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
850
|
+
if (this.options.shouldTriangulate) {
|
|
851
|
+
if (distinctIndices(pointA.atUncheckedIndex(i - 1), pointA.atUncheckedIndex(i), pointB.atUncheckedIndex(i))) {
|
|
852
|
+
this.addIndexedTrianglePointIndexes(pointA.atUncheckedIndex(i - 1), pointA.atUncheckedIndex(i), pointB.atUncheckedIndex(i));
|
|
853
|
+
if (normalA && normalB)
|
|
854
|
+
this.addIndexedTriangleNormalIndexes(normalA.atUncheckedIndex(i - 1), normalA.atUncheckedIndex(i), normalB.atUncheckedIndex(i - 1));
|
|
855
|
+
if (paramA && paramB)
|
|
856
|
+
this.addIndexedTriangleParamIndexes(paramA.atUncheckedIndex(i - 1), paramA.atUncheckedIndex(i), paramB.atUncheckedIndex(i - 1));
|
|
857
|
+
}
|
|
858
|
+
if (distinctIndices(pointB.atUncheckedIndex(i), pointB.atUncheckedIndex(i - 1), pointA.atUncheckedIndex(i - 1))) {
|
|
859
|
+
this.addIndexedTrianglePointIndexes(pointA.atUncheckedIndex(i - 1), pointB.atUncheckedIndex(i), pointB.atUncheckedIndex(i - 1));
|
|
860
|
+
if (normalA && normalB)
|
|
861
|
+
this.addIndexedTriangleNormalIndexes(normalA.atUncheckedIndex(i - 1), normalB.atUncheckedIndex(i), normalB.atUncheckedIndex(i - 1));
|
|
862
|
+
if (paramA && paramB)
|
|
863
|
+
this.addIndexedTriangleParamIndexes(paramA.atUncheckedIndex(i - 1), paramB.atUncheckedIndex(i), paramB.atUncheckedIndex(i - 1));
|
|
864
|
+
}
|
|
865
|
+
}
|
|
866
|
+
else {
|
|
867
|
+
if (pointA.atUncheckedIndex(i - 1) !== pointA.atUncheckedIndex(i) || pointB.atUncheckedIndex(i - 1) !== pointB.atUncheckedIndex(i)) {
|
|
868
|
+
this.addIndexedQuadPointIndexes(pointA.atUncheckedIndex(i - 1), pointA.atUncheckedIndex(i), pointB.atUncheckedIndex(i - 1), pointB.atUncheckedIndex(i));
|
|
869
|
+
if (normalA && normalB)
|
|
870
|
+
this.addIndexedQuadNormalIndexes(normalA.atUncheckedIndex(i - 1), normalA.atUncheckedIndex(i), normalB.atUncheckedIndex(i - 1), normalB.atUncheckedIndex(i));
|
|
871
|
+
if (paramA && paramB)
|
|
872
|
+
this.addIndexedQuadParamIndexes(paramA.atUncheckedIndex(i - 1), paramA.atUncheckedIndex(i), paramB.atUncheckedIndex(i - 1), paramB.atUncheckedIndex(i));
|
|
873
|
+
}
|
|
837
874
|
this._polyface.terminateFacet();
|
|
838
875
|
}
|
|
839
876
|
}
|
|
@@ -1831,4 +1868,7 @@ function resolveToIndexedXYZCollectionOrCarrier(points) {
|
|
|
1831
1868
|
return points.packedPoints;
|
|
1832
1869
|
return points;
|
|
1833
1870
|
}
|
|
1871
|
+
function distinctIndices(i0, i1, i2) {
|
|
1872
|
+
return i0 !== i1 && i1 !== i2 && i2 !== i0;
|
|
1873
|
+
}
|
|
1834
1874
|
//# sourceMappingURL=PolyfaceBuilder.js.map
|