Another functions
to offset a composite curve by a composite curve .
In case of adjacent two trimmed curves in the original composite curve are not tangential continuous and causes a disconnection of offset curves, disconnected offset curves are connected with two bounded lines, instead of an arc.
Each bounded line is extended from end point of each offset curve,
towards tangent vector at each end point, and ended at an intersection point with each other.

2D: Judges the sense of rotation of a closed composite curve

A Function which judges the sense of rotation of a closed composite curve, was added.

3D : Approximation of a grid of points by a Bspline surface : improved

Functions
to find a Bspline surface that approximates a grid of points are improved.

3D: Another versions of offsetting

Type 3 functions
are added for offsetting a point/curve/surface with a Bspline surface or a set of Bezier surfaces.
New functions approximate sample points with a Bspline surface
by calling the latest approximation function, not by using own logic.

Utility

2D

gh2rqtNew creates a quadtree
gh2rqtDispose disposes a quadtree
gh2rqtGetMemSize gets size of memory areas being used by a quadtree
gh2rqtGetExtent gets geometrical extent of a quadtree
gh2rqtGetPixLevel gets pixel level of a quadtree
gh2rqtGetRoot gets root quadrant of a quadtree
gh2rqtIntersect rids a quadtree of intersections with a curve
gh2rqtHasIntersection judges whether a quadtree and a curve intersect or not
gh2rqtMakeCCL makes CCL in a quadtree
gh2rqtClearCCL removes CCL in a quadtree
gh2rqtCountComponents gets the number of CCLs in a quadtree
gh2rqtGetQuadComponent gets CCL which a quadrant belongs to
gh2rqtQuadDivide divides a quadrant
gh2rqtQuadMergeIfP merges subtree of a quadrant if possible
gh2rqtQuadMergeIfP2 merges subtree of a quadrant if possible (type 2)
gh2rqtQuadIsLeaf gets whether a quadrant is leaf or not
gh2rqtQuadIsPixel gets whether a quadrant is pixel or not
gh2rqtQuadSetValue sets specified value on a quadrant
gh2rqtQuadGetValue gets value of a quadrant
gh2rqtQuadSetApplData1 sets specified value on application data 1 of a quadrant
gh2rqtQuadSetApplData2 sets specified value on application data 2 of a quadrant
gh2rqtQuadGetApplData1 gets value of application data 1 of a quadrant
gh2rqtQuadGetApplData2 gets value of application data 2 of a quadrant
gh2rqtQuadGetChild gets specified child of a quadrant
gh2rqtQuadGetExtent gets geometrical extent of a quadrant
gh2rqtQuadGetLevel gets level of a quadrant
gh2rqtQuadGetMother gets parent of a quadrant
gh2rqtQuadGetTree gets a quadtree which a quadrant belongs to
gh2rqtQuadGetType gets type of a quadrant
gh2rqtQuadGtEqEdgeNeighbor gets edge neighbor of a quadtree
gh2rqtQuadGtEqVrtxNeighbor gets vertex neighbor of a quadtree
gh2rqtQuadTraverse traverses subtree of a quadrant
gh2rqtQuadTraverse2 traverses subtree of a quadrant (type 2)
gh2rqtQuadHasIntersection judges whether a quadrant and a curve intersect or not
gh2rqtSetOpIntersection gets intersection between two aligned quadtrees
gh2rqtSetOpUnion gets union between two aligned quadtrees
gh2rqtSetOpSubtraction gets sutraction between two aligned quadtrees
gh2rqtSerialize serializes a quadtree
gh2rqtUnserialize un-serializes a quadtree
gh2rqtAllcSerializedQuadtree allocates memory areas for a serialized quadtree
gh2rqtFreeSerializedQuadtree frees memory areas for a serialized quadtree
gh2rqtConvCCrv converts a region enclosed by a closed curve into a quadtree
gh2ofstCmcCmcByBzc3 finds a composite curve which approximates an offset of a composite curve (official version, type 3)
gh2ofstCmcCmcByBsc3 finds a composite curve which approximates an offset of a composite curve (official version, type 3)
gh2jdgwCCmc judges the sense of rotation of a closed composite curve

3D

gh3aprcBss_Rev2 approximates points by a bi-cubic Bspline surface in the given precision (type 1, improved)
gh3aprcBss2_Rev2 approximates points by a bi-cubic Bspline surface in the given precision (type 2, improved)
gh3aprcBss3_Rev2 approximates points by a bi-cubic Bspline surface in the given precision (type 3, improved)
gh3aprcBss32_Rev2 approximates points by a bi-cubic Bspline surface in the given precision (type 3-2, improved)
gh3aprcBss4_Rev2 approximates points by a bi-cubic Bspline surface in the given precision (type 4, improved)
gh3aprcBss42_Rev2 approximates points by a bi-cubic Bspline surface in the given precision (type 4-2, improved)
gh3aprcCBss_Rev2 approximates points by a closed bi-cubic Bspline surface in the given precision (type 1, improved)
gh3aprcCBss2_Rev2 approximates points by a closed bi-cubic Bspline surface in the given precision (type 2,
gh3ofstPntBzs3 finds a bezier surface which approximates an offset of a point (type 3)
gh3ofstPntBss3 finds a Bspline surface which approximates an offset of a point (type 3)
gh3ofstLinBzs3 finds a bezier surface which approximates an offset of a line (type 3)
gh3ofstCirBzs3 finds a bezier surface which approximates an offset of a circle (type 3)
gh3ofstEllBzs3 finds a bezier surface which approximates an offset of a ellipse (type 3)
gh3ofstParBzs3 finds a bezier surface which approximates an offset of a parabola (type 3)
gh3ofstHypBzs3 finds a bezier surface which approximates an offset of a hyperbola (type 3)
gh3ofstBzcBzs3 finds a bezier surface which approximates an offset of a bezier curve (type 3)
gh3ofstBscBzs3 finds a bezier surface which approximates an offset of a Bspline curve (type 3)
gh3ofstRBzcBzs3 finds a bezier surface which approximates an offset of a rational bezier curve (type 3)
gh3ofstRBscBzs3 finds a bezier surface which approximates an offset of a rational Bspline curve (type 3)
gh3ofstTrcBzs3 finds a bezier surface which approximates an offset of a trimmed curve (type 3)
gh3ofstLinBss3 finds a Bspline surface which approximates an offset of a line (type 3)
gh3ofstCirBss3 finds a Bspline surface which approximates an offset of a circle (type 3)
gh3ofstEllBss3 finds a Bspline surface which approximates an offset of a ellipse (type 3)
gh3ofstParBss3 finds a Bspline surface which approximates an offset of a parabola (type 3)
gh3ofstHypBss3 finds a Bspline surface which approximates an offset of a hyperbola (type 3)
gh3ofstBzcBss3 finds a Bspline surface which approximates an offset of a bezier curve (type 3)
gh3ofstBscBss3 finds a Bspline surface which approximates an offset of a Bspline curve (type 3)
gh3ofstRBzcBss3 finds a Bspline surface which approximates an offset of a rational bezier curve (type 3)
gh3ofstRBscBss3 finds a Bspline surface which approximates an offset of a rational Bspline curve (type 3)
gh3ofstTrcBss3 finds a Bspline surface which approximates an offset of a trimmed curve (type 3)
gh3ofstPlnBzs3 finds a bezier surface which approximates an offset of a plane (type 3)
gh3ofstSphBzs3 finds a bezier surface which approximates an offset of a sphere (type 3)
gh3ofstCylBzs3 finds a bezier surface which approximates an offset of a cylinder (type 3)
gh3ofstConBzs3 finds a bezier surface which approximates an offset of a cone (type 3)
gh3ofstBzsBzs3 finds a bezier surface which approximates an offset of a bezier surface (type 3)
gh3ofstBssBzs3 finds a bezier surface which approximates an offset of a bspline surface (type 3)
gh3ofstRBzsBzs3 finds a bezier surface which approximates an offset of a rational bezier surface (type 3)
gh3ofstRBssBzs3 finds a bezier surface which approximates an offset of a rational Bspline surface (type 3)
gh3ofstLesBzs3 finds a bezier surface which approximates an offset of a linear extrusion surface (type 3)
gh3ofstRvsBzs3 finds a bezier surface which approximates an offset of a revolution surface (type 3)
gh3ofstRtsBzs3 finds a bezier surface which approximates an offset of a rectangular trimmed surface (type 3
gh3ofstPlnBss3 finds a Bspline surface which approximates an offset of a plane (type 3)
gh3ofstSphBss3 finds a Bspline surface which approximates an offset of a sphere (type 3)
gh3ofstCylBss3 finds a Bspline surface which approximates an offset of a cylinder (type 3)
gh3ofstConBss3 finds a Bspline surface which approximates an offset of a cone (type 3)
gh3ofstBzsBss3 finds a Bspline surface which approximates an offset of a bezier surface (type 3)
gh3ofstBssBss3 finds a Bspline surface which approximates an offset of a Bspline surface (type 3)
gh3ofstRBzsBss3 finds a Bspline surface which approximates an offset of a rational bezier surface (type 3)
gh3ofstRBssBss3 finds a Bspline surface which approximates an offset of a rational Bspline surface (type 3)
gh3ofstLesBss3 finds a Bspline surface which approximates an offset of a linear extrusion surface (type 3)
gh3ofstRvsBss3 finds a Bspline surface which approximates an offset of a revolution surface (type 3)
gh3ofstRtsBss3 finds a Bspline surface which approximates an offset of a rectangular trimmed surface (type 3)