All pastes #324632 Raw Copy code Copy link Edit

Someone

public unlisted text v1 · immutable
#324632 ·published 2007-01-22 15:19 UTC
rendered paste body
0D types
	vertex/knot/vector		(float,float,float)

1D types
	arc/line		(vertex,vertex)

2D types
	polyforms
		closed/open		(bool, closed if the last/first vertex are identical, the last vertex is also dropped)
		vertex			(list[float], sequential list)
	
	curves (all curves with non uniform radius are assumed to be NURBS)
		closed/open		(bool, closed if the last/first knot are identical, the last vertex is also dropped)
		radius (radians)	(float, if radius is set the curve is assumed to be constant radius)	
		knot & vector		(dict(knot,vector))

3D types
	solid
		closed/open		(boo, closed if the last/first vertex are identical, the last vertex is also dropped)
		segment			(list, polyforms and curves)


some notes on Relational Geometry (used in MultiSurf by www.aerohydro.com)

this is an object oriented geometry model. 
Points can be directly specified (Abspoint), but also depend on other geometry
Curves are defined by Points
Surfaces are defined by Points or Curves

Points:
   AbsPoint (x,y,z)
   RelPoint (AbsPoint,dx,dy,dz)
Beads: (points that lie on a curve)
   AbsBead  (Curve, t)    0<t<1
   RelBead  (Bead, dt)    bead offset by dt from another bead
   ArcLenBead (Bead, ds)  bead offset by ds along arc length of curve
Magnets: (points that lie on a surface)
   AbsMagnet (Surface, u,v)
   ...
Curves:
   LineCurve (Point,Point)
   ArcCurve  (Point,Point,Point)
   BCurve    (Point,...)   B-pline
Surfaces:
   DevSurf (Line,Line)
   xxxSurf (supports)  a surface somehow calculated from its supporting objects
Snakes: (Curves that lie on a surface)
   ArcSnake
   LineSnake