MakeTool:
PROC [
name: ROPE, -- name of the tool
valueProc: ValueProc, -- to evaluate implicit function
ops: G3dTool.Operations ¬ G3dTool.allOps,
extraButtons: ButtonList ¬ NIL, -- in addition to the standard set
extraControls: ControlList ¬ NIL, -- in addition to the standard set
controlSizes: ControlSizes ¬ [], -- adjust size of controls
useArcBalls: BOOL ¬ TRUE, -- use arc balls?
arcBallSize: INT ¬ 136,
client: Client ¬ [], -- client supplied data and procs
graphicsHeight: INT ¬ 475,
background: Triple ¬ [0.3, 0.3, 1.0],
noOpen: BOOL ¬ FALSE,
startProc: StartProc ¬ NIL, -- to find start point
cubeOkProc: CubeOkProc ¬ NIL, -- to reject cube during tracking
vertexOkProc: VertexOkProc ¬ NIL, -- to reject/accept vertex
polygonOkProc: PolygonOkProc ¬ NIL, -- to reject/accept polygon
normalProc: NormalProc ¬ NIL, -- to evaluate surface normals
colorProc: ColorProc ¬ NIL, -- to assign surface vertex color
textureProc: TextureProc ¬ NIL, -- to assign surface texture coordinates
rayProc: RayProc ¬ NIL, -- to compute pixel value
docProc: DocProc ¬ NIL, -- to document the client's object
camera: CameraRep ¬ [[0,2,0],[],1,60], -- client can preset camera
nViews: NAT ¬ 1, -- number of views
toolSettings: ToolRep ¬ []] -- client can preset tool modes
RETURNS [Tool];
Return a tool for manipulation/polygonization/rendering of an implicit design.
Regarding the callback procs:
callbacks may not be nested.
clientData is passed to the callback procs.
If normalProc is NIL, valueProc is used to compute the surface normal.
If textureProc is NIL, no texture is assigned.
If colorProc is NIL, no color is assigned.
The standard set of controls include:
x, y, z global rotations,
viewing scale,
viewing field of view,
adaptive subdivision limit,
polygon flatness limit.
The standard set of buttons include:
measure mode
distance mode
implicit tolerance
implicit threshold
cube size
implicit spread
octree output
polygon output
interpress output
display options
auto polygon save
start
stop.
When ray-tracing, the camera views the ray tracing world, including the object being ray-traced, the image plane, the eye-point and eye-direction, and, optionally, individual rays.