@itwin/core-geometry 4.3.0-dev.16 → 4.3.0-dev.18

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +6 -1
  2. package/lib/cjs/curve/CurveOps.d.ts +4 -5
  3. package/lib/cjs/curve/CurveOps.d.ts.map +1 -1
  4. package/lib/cjs/curve/CurveOps.js +1 -1
  5. package/lib/cjs/curve/CurveOps.js.map +1 -1
  6. package/lib/cjs/curve/CurveTypes.d.ts +14 -2
  7. package/lib/cjs/curve/CurveTypes.d.ts.map +1 -1
  8. package/lib/cjs/curve/CurveTypes.js.map +1 -1
  9. package/lib/cjs/curve/RegionOps.d.ts +5 -11
  10. package/lib/cjs/curve/RegionOps.d.ts.map +1 -1
  11. package/lib/cjs/curve/RegionOps.js.map +1 -1
  12. package/lib/cjs/curve/internalContexts/MultiChainCollector.d.ts +2 -3
  13. package/lib/cjs/curve/internalContexts/MultiChainCollector.d.ts.map +1 -1
  14. package/lib/cjs/curve/internalContexts/MultiChainCollector.js.map +1 -1
  15. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.d.ts +4 -4
  16. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -1
  17. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js +38 -36
  18. package/lib/cjs/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
  19. package/lib/cjs/geometry3d/Point3dVector3d.d.ts +8 -0
  20. package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -1
  21. package/lib/cjs/geometry3d/Point3dVector3d.js +10 -0
  22. package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -1
  23. package/lib/cjs/polyface/PolyfaceBuilder.d.ts +2 -0
  24. package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -1
  25. package/lib/cjs/polyface/PolyfaceBuilder.js +12 -2
  26. package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
  27. package/lib/cjs/polyface/PolyfaceQuery.d.ts +38 -11
  28. package/lib/cjs/polyface/PolyfaceQuery.d.ts.map +1 -1
  29. package/lib/cjs/polyface/PolyfaceQuery.js +93 -16
  30. package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -1
  31. package/lib/esm/curve/CurveOps.d.ts +4 -5
  32. package/lib/esm/curve/CurveOps.d.ts.map +1 -1
  33. package/lib/esm/curve/CurveOps.js +1 -1
  34. package/lib/esm/curve/CurveOps.js.map +1 -1
  35. package/lib/esm/curve/CurveTypes.d.ts +14 -2
  36. package/lib/esm/curve/CurveTypes.d.ts.map +1 -1
  37. package/lib/esm/curve/CurveTypes.js.map +1 -1
  38. package/lib/esm/curve/RegionOps.d.ts +5 -11
  39. package/lib/esm/curve/RegionOps.d.ts.map +1 -1
  40. package/lib/esm/curve/RegionOps.js.map +1 -1
  41. package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts +2 -3
  42. package/lib/esm/curve/internalContexts/MultiChainCollector.d.ts.map +1 -1
  43. package/lib/esm/curve/internalContexts/MultiChainCollector.js.map +1 -1
  44. package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts +4 -4
  45. package/lib/esm/curve/internalContexts/PolygonOffsetContext.d.ts.map +1 -1
  46. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js +38 -36
  47. package/lib/esm/curve/internalContexts/PolygonOffsetContext.js.map +1 -1
  48. package/lib/esm/geometry3d/Point3dVector3d.d.ts +8 -0
  49. package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -1
  50. package/lib/esm/geometry3d/Point3dVector3d.js +10 -0
  51. package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -1
  52. package/lib/esm/polyface/PolyfaceBuilder.d.ts +2 -0
  53. package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -1
  54. package/lib/esm/polyface/PolyfaceBuilder.js +12 -2
  55. package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
  56. package/lib/esm/polyface/PolyfaceQuery.d.ts +38 -11
  57. package/lib/esm/polyface/PolyfaceQuery.d.ts.map +1 -1
  58. package/lib/esm/polyface/PolyfaceQuery.js +93 -16
  59. package/lib/esm/polyface/PolyfaceQuery.js.map +1 -1
  60. package/package.json +3 -3
@@ -980,8 +980,12 @@ class PolyfaceBuilder extends NullGeometryHandler {
980
980
  */
981
981
  addTorusPipe(surface, phiStrokeCount, thetaStrokeCount) {
982
982
  const thetaFraction = surface.getThetaFraction();
983
- const numU = Geometry.clamp(Geometry.resolveNumber(phiStrokeCount, 8), 4, 64);
984
- const numV = Geometry.clamp(Geometry.resolveNumber(thetaStrokeCount, Math.ceil(16 * thetaFraction)), 2, 64);
983
+ let numU = Geometry.clamp(Geometry.resolveNumber(phiStrokeCount, 8), 4, 64);
984
+ let numV = Geometry.clamp(Geometry.resolveNumber(thetaStrokeCount, Math.ceil(16 * thetaFraction)), 2, 64);
985
+ if (this._options) {
986
+ numU = this._options.applyTolerancesToArc(surface.getMinorRadius());
987
+ numV = this._options.applyTolerancesToArc(surface.getMajorRadius(), surface.getSweepAngle().radians);
988
+ }
985
989
  this.toggleReversedFacetFlag();
986
990
  const sizes = surface.maxIsoParametricDistance();
987
991
  this.addUVGridBody(surface, numU, numV, Segment1d.create(0, sizes.x), Segment1d.create(0, sizes.y));
@@ -1451,6 +1455,12 @@ class PolyfaceBuilder extends NullGeometryHandler {
1451
1455
  addFacetFromVisitor(visitor) {
1452
1456
  this.addFacetFromGrowableArrays(visitor.point, visitor.normal, visitor.param, visitor.color, visitor.edgeVisible);
1453
1457
  }
1458
+ /** Add all visitor facets to the evolving polyface (in reverse order if indicated by the builder state) */
1459
+ addFacetsFromVisitor(visitor) {
1460
+ visitor.reset();
1461
+ for (; visitor.moveToNextFacet();)
1462
+ this.addFacetFromVisitor(visitor);
1463
+ }
1454
1464
  /**
1455
1465
  * Add the subset of visitor data indexed by the indices.
1456
1466
  * * Ideally, the subset represents a sub-facet of the visited facet.