Moment of Inspiration Javascript Documentation

Moment of Inspiration Javascript Classes

BRep EditableListView List PointObject UIControl
BackgroundImage Face MenuItem PointPicker UIProgressBar
BoundingBox FactoryInputEnum MeshObject PointStreamPicker UIRangeControl
ColorButton FilesystemOM Moi PointTextInput UnsignedIntegerTextInput
CommandButton GeomObject NumericTextInput PropertiesPanel VectorMath
CommandOM GeomObjectBase ObjectDatabaseStateEnum PropertyBinder View
CommandUIContainer GeomObjectEnum ObjectList Selection ViewPanel
ConstructionLine GeometryDatabase ObjectPicker Settings ViewlinkContainer
CoordinateFrame GeometryFactory ObjectSnapEnum StateButton Viewport
Curve GeometryFactoryInput ObjectStyle TabButton WaitableObject
CurveOrientation Grid Osnap TabContainer WaitableWindow
CurveSegment Image PickedPoint Text Window
DisplayModeEnum IntegerTextInput Point TextInput  
DrawingAids LayoutPanel Point2D UI  

GeometryFactory Subclasses

addpoint booleanunion ellipsediameter planarsrf rotateaxis
align box extend plane scale
alignbackgroundimage box3pts extrude plane3pts scale1d
arc3pt boxcenter fillet planecenter scale2d
arccenter chamfer flip point separate
arccontinue circle helix polygon shell
arctangent circle3pt interpcurve polygonedge shrinktrimmedsrf
arraycircular circlediameter intersect polygonstar sketchcurve
arraycurve circletangent join polyline sphere
arraydir cone line project sweep
arraygrid copy loft railrevolve text
backgroundimage curve merge rect3pts trim
blend cylinder mirror rectangle  
booleandifference delete move rectcenter  
booleanintersection ellipse network revolve  
booleanmerge ellipsecorner offset rotate  

BRep ( GeomObject )

Methods
Name Result Arguments
getEdges ObjectList
getFaces ObjectList
getJoinedEdges ObjectList
getNakedEdges ObjectList
getSeamEdges ObjectList

BackgroundImage

Properties
Name Type Notes
fileName string
read only
hidden boolean

Methods
Name Result Arguments
remove

BoundingBox

Properties
Name Type Notes
center Point
read only
diagonalLength float
read only
max Point
min Point
xLength float
read only
yLength float
read only
zLength float
read only

Methods
Name Result Arguments
addBoundingBox
addObject
GeomObject obj,
boolean useHighAccuracyBounds = 0
addPoint
Point point
clear
get
float minX,
float minY,
float minZ,
float maxX,
float maxY,
float maxZ
set
float minX,
float minY,
float minZ,
float maxX,
float maxY,
float maxZ

ColorButton ( UIControl )

Properties
Name Type Notes
value int

CommandButton ( UIControl )

Properties
Name Type Notes
active boolean

CommandOM

Properties
Name Type Notes
lastCommandRevisionEnd int
read only
lastCommandRevisionStart int
read only
nonRepeatingCommands string

Methods
Name Result Arguments
cancel
createFactory GeometryFactory
string factoryName
execCommand
string commandName
execCommandSet
string commandSetName
getCommandLineParams string
getOption any
string option,
boolean fromIni = 0
redo
registerCommandSpecificShortcutKey
string shortcut
repeatLastCommand
setCommandSpecificUndo
boolean newCommandSpecificUndo
setOption
string option,
any varValue,
boolean toIni = 0
undo

CommandUIContainer ( WaitableObject )

Methods
Name Result Arguments
pop
push
string url

ConstructionLine ( GeomObject )

Properties
Name Type Notes
isTemporary boolean

CoordinateFrame

Properties
Name Type Notes
origin Point
xaxis Point
yaxis Point
zaxis Point
read only

Methods
Name Result Arguments
distancex float
Point point
distancey float
Point point
distancez float
Point point
evaluate Point
float x,
float y,
float z
get
float originX,
float originY,
float originZ,
float xAxisX,
float xAxisY,
float xAxisZ,
float yAxisX,
float yAxisY,
float yAxisZ
set
float newOriginX,
float newOriginY,
float newOriginZ,
float newXAxisX,
float newXAxisY,
float newXAxisZ,
float newYAxisX,
float newYAxisY,
float newYAxisZ

Curve ( GeomObject )

Properties
Name Type Notes
isClosed boolean
read only

Methods
Name Result Arguments
getEndPt Point
getFacesOfEdge ObjectList
getLength float
getStartPt Point

CurveOrientation

Properties
Name Type Notes
flipped boolean
seam float

CurveSegment ( GeomObject )

DisplayModeEnum

Enumeration Values
Name Value
Normal
0
FaintWireframe
1

DrawingAids

Properties
Name Type Notes
drawPlanar boolean
gridSnap boolean
objectSnap boolean
objectSnapAxis boolean
objectSnapCen boolean
objectSnapEnd boolean
objectSnapInt boolean
objectSnapMarkerDisplayRadius int
objectSnapMarkerOpacity int
objectSnapMid boolean
objectSnapOn boolean
objectSnapOnSrf boolean
objectSnapOrigin boolean
objectSnapPerp boolean
objectSnapPerpPerp boolean
objectSnapProjectInOrthoViews boolean
objectSnapPt boolean
objectSnapQuad boolean
objectSnapRadius int
objectSnapShowMarkers boolean
objectSnapTan boolean
objectSnapTanTan boolean
objectSnapUseApparentIntersections boolean
snapToLockedObjects boolean
snapToPickedPoints boolean
straightSnap boolean
straightSnapActivateDistance int
straightSnapAngle float
straightSnapEnablePerpendicular boolean
straightSnapEnableSurfaceNormal boolean
straightSnapEnableTangent boolean
straightSnapEnableVertical boolean
straightSnapKeepActiveDistance int
straightSnapLineColor int
straightSnapLineStyle string
straightSnapLineWidth float

Methods
Name Result Arguments
constructionLineDivSnap
float divisions
constructionLineProject
constructionLineReorient
constructionLineReposition
constructionLineRotate
float angleDegrees

EditableListView

Methods
Name Result Arguments
add
remove

Face ( GeomObject )

Methods
Name Result Arguments
getEdges ObjectList
getJoinedEdges ObjectList
getNakedEdges ObjectList
getSeamEdges ObjectList

FactoryInputEnum

Enumeration Values
Name Value
Unknown
0
Point
1
CoordinateFrame
2
Bool
3
Double
4
Int
5
String
6
Object
7
ObjectList
8
List
9

FilesystemOM

Methods
Name Result Arguments
getCompactPath string
string fileName,
int numChars
getFileNameFromPath string
string fullPath
getOpenFileName string
string title,
string filters
getSaveFileName string
string title,
string filters
incrementFileName string
string fileName

GeomObject ( GeomObjectBase )

Properties
Name Type Notes
databaseRevision int
read only
databaseState ObjectDatabaseStateEnum
read only
displayMode DisplayModeEnum
hidden boolean
id string
read only
locked boolean
name string
selected boolean
showPoints boolean
styleIndex int
type GeomObjectEnum
read only
updateWithHistory boolean

Methods
Name Result Arguments
clone GeomObject
deleteHistoryData
getBoundingBox BoundingBox
boolean useHighAccuracyBounds = 0
getHistoryChildren ObjectList
getHistoryData string
getHistoryParents ObjectList
getSubObjects ObjectList
setHitTest
boolean newHitTest

GeomObjectBase

GeomObjectEnum

Enumeration Values
Name Value
Unknown
0
CurveSegment
1
Curve
2
BRep
3
Face
4
ConstructionLine
5
PointObject
6
MeshObject
7

GeometryDatabase

Properties
Name Type Notes
Units string
currentFileName string
read only
currentFileNameDir string
read only
defaultUnits string
generatedObjectsInheritStyle boolean
revision int
read only
scaleOnImportDifferentUnits boolean
scaleOnUnitChange boolean
startupTemplate string
tolerance float
read only
unitsShortLabel string
read only

Methods
Name Result Arguments
addObject
GeomObject object
addObjects
ObjectList objects
addStyle ObjectStyle
calculateCurveOrientations List
ObjectList curveList
copyToClipboard
ObjectList objects
copyToClipboardCommand
ObjectList objects
createObjectList ObjectList
deleteAll
deselectAll
fileExport
string fileName,
string options = ""
fileImport
string fileName
fileNew
boolean noQuerySaveChanges = 0
findObject GeomObject
string id
findStyle ObjectStyle
string styleName,
boolean createIfNotFound = 0
getObjectStyles List
getObjects ObjectList
getOpenFileName string
string dialogTitle = "",
boolean isTemplate = 0
getSaveFileName string
string default = ""
getSelectedObjects ObjectList
hide
boolean unused = 0
incrementalSave
invertSelection
isolate
isolateLock
lock
open
string fileName,
boolean noQuerySaveChanges = 0
openTemplate
string fileName,
boolean noQuerySaveChanges = 0
pasteFromClipboard
removeObject
GeomObject object
removeObjects
ObjectList objects
save
saveAs
string fileName,
string options = ""
selectAll
selectLastCreated
boolean deselectOthers = 0
selectNamed
string name
selectVisible
showPoints
showSubset
sortCurves
ObjectList curveList
styleEditorClosed
styleEditorOpened
unlockSubset

GeometryFactory

Properties
Name Type Notes
name string
read only
numInputs int
read only

Methods
Name Result Arguments
addToListInput
int whichInput,
any value
calculate ObjectList
cancel
clearInput
int whichInput
commit
createInput
string inputType
createInputType
disableUIGeometry
disableUpdate
boolean varSuppress
getInput GeometryFactoryInput
int whichInput
removeLastInput
reset
setInput
int whichInput,
any value
update

GeometryFactoryInput

Properties
Name Type Notes
name string
type FactoryInputEnum
read only

Methods
Name Result Arguments
getValue any
setValue
any newValue

Grid

Properties
Name Type Notes
accentedLineColor int
accentedLineFrequency int
accentedLineStyle string
accentedLineWidth float
display boolean
lineColor int
lineStyle string
lineWidth float
sections int
showXYAxes boolean
size float
snapSize float
xAxisColor int
yAxisColor int

Image

Methods
Name Result Arguments
getSaveFileName string
string default = ""
save
string fileName

IntegerTextInput ( TextInput )

Properties
Name Type Notes
integerValue int

LayoutPanel

Properties
Name Type Notes
dock string

List

Properties
Name Type Notes
length int
read only

Methods
Name Result Arguments
add
any item
item any
int index
remove
int index

MenuItem ( UIControl )

MeshObject ( GeomObject )

Moi

Properties
Name Type Notes
command CommandOM
read only
drawingAids DrawingAids
read only
expireDate string
read only
filesystem FilesystemOM
read only
geometryDatabase GeometryDatabase
read only
grid Grid
read only
selection Selection
read only
settings Settings
read only
ui UI
read only
vectorMath VectorMath
read only
version string
read only
view View
read only

Methods
Name Result Arguments
copyTextToClipboard
string text
createList List
exit
boolean noQuerySaveChanges = 0
getLog string
launchHelp
log
string toLog
test
string test

NumericTextInput ( TextInput )

Properties
Name Type Notes
numericValue float

ObjectDatabaseStateEnum

Enumeration Values
Name Value
Unknown
0
Unattached
1
InDatabase
2
Deleted
3

ObjectList

Properties
Name Type Notes
length int
read only
numBReps int
read only
numConstructionLines int
read only
numCurves int
read only
numEdges int
read only
numFaces int
read only
numOpenBReps int
read only
numPoints int
read only
numSingleFaceBReps int
read only
numSolids int
read only
numStandaloneCurves int
read only
numTopLevelObjects int
read only

Methods
Name Result Arguments
addObject
callMethod
string methodName
getBReps ObjectList
getBoundingBox BoundingBox
getConstructionLines ObjectList
getCurves ObjectList
getEdges ObjectList
getFaces ObjectList
getHighAccuracyBoundingBox BoundingBox
getOpenBReps ObjectList
getPoints ObjectList
getSingleFaceBReps ObjectList
getSolids ObjectList
getStandaloneCurves ObjectList
getTopLevelObjects ObjectList
invertProperty
string propName
item GeomObject
int index
lockSelection
removeObject
removeObjectAt
int index
setProperty
string propName,
any pvarValue
sortBySelectionOrder
unlockSelection

ObjectPicker ( WaitableObject )

Properties
Name Type Notes
finishOnPick boolean
max int
min int
objects ObjectList
read only

Methods
Name Result Arguments
allowBReps
allowCurves
allowEdgeCurves
allowEditPoints
allowFaces
allowPointObjects
allowStandaloneCurves
allowTopLevelObjects
disableWindowing
done boolean
resetAllow

ObjectSnapEnum

Enumeration Values
Name Value
None
0
Origin
1
Axis
2
End
3
Mid
4
Cen
5
Int
6
StraightSnapInt
7
SelfInt
8
CPlaneInt
9
Quad
10
Pt
11
PtOnObject
12
On
13
OnSrf
14
Perp
15
Tan
16
PerpPerp
17
TanTan
18
Div
19

ObjectStyle

Properties
Name Type Notes
color int
hexcolor string
read only
index int
read only
name string

Methods
Name Result Arguments
moveDown
moveUp
remove

Osnap

Properties
Name Type Notes
isOnCurve boolean
read only
object GeomObject
read only
otherObject GeomObject
read only
otherParameter float
read only
parameter float
read only
pt Point
read only
screenDist float
read only
type ObjectSnapEnum
read only
typeString string
read only

PickedPoint ( Point )

Properties
Name Type Notes
numOsnaps int
read only
screenX float
read only
screenY float
read only
viewport Viewport
read only

Methods
Name Result Arguments
osnap Osnap
int index

Point

Properties
Name Type Notes
x float
y float
z float

Methods
Name Result Arguments
add
Point pointToAdd
get
float x,
float y,
float z
scale
float factor
set
float newX,
float newY,
float newZ
toString string
int numDecimals = -1

Point2D

Properties
Name Type Notes
x float
y float

Methods
Name Result Arguments
add
Point2D pointToAdd
get
float x,
float y
scale
float factor
set
float newX,
float newY
toString string
int numDecimals = -1

PointObject ( GeomObject )

Properties
Name Type Notes
pt Point
read only

PointPicker ( WaitableObject )

Properties
Name Type Notes
allowMidObjectSnap boolean
altDown boolean
read only
basept PickedPoint
read only
controlDown boolean
read only
cplane CoordinateFrame
read only
disableBasePt boolean
disableObjectSnap boolean
disableSnapToBasePt boolean
disableStraightSnap boolean
disableTanPerpObjectSnap boolean
disableVerticalStraightSnap boolean
enableOnObjectSnap boolean
finishOnMouseDown boolean
finishOnMouseUp boolean
hasRelocatedBasePt boolean
read only
inMouseDown boolean
read only
inMouseUp boolean
read only
onlyUseSnapFunc boolean
orientedptframe CoordinateFrame
read only
param float
read only
pt PickedPoint
read only
ptframe CoordinateFrame
read only
relocatedBasePt Point
read only
resetOnMouseLeave boolean
shiftDown boolean
read only
stickToSurfacesMode string

Methods
Name Result Arguments
addSnapFunc
object pdispFunc,
string funcName = ""
addSnapPoint
Point point,
string textLabel
addSnapPostFunc
object pdispFunc,
string funcName = ""
addStraightSnapAngle
float angleInDegrees,
string label
bindBasePt
object target
bindFunc
object target,
string funcName = ""
bindFuncPostUpdate
object target,
string funcName = ""
bindResultCPlane
object target
bindResultFrame
object target
bindResultOrientation
object target
bindResultPt
object target
clearBasePt
clearBindings
clearCurrentSnaps
clearSnapFuncPoint
clearSnapFuncs
clearSnapPoints
clearStraightSnapAngles
disableStraightSnapAngle
float angleInDegrees
reset
restrictToLinePtDir
Point basePt,
Point dir,
boolean projectAll
restrictToLinePtPt
Point startPt,
Point endpt,
boolean projectAll
restrictToObject
restrictToPlane
CoordinateFrame plane,
boolean projectAll
restrictToPlaneThroughPt
Point point,
boolean projectAll
setAngleConstraint
float angleDegrees
setBasePt
Point point
setDistanceConstraint
float distance
setPt
Point point
setRadialIntersection
CoordinateFrame frame,
Point point
setSnapFuncPoint
Point point,
string textLabel
setX
float x
setY
float y
setZ
float z

PointStreamPicker ( WaitableObject )

Properties
Name Type Notes
numPoints int
read only

Methods
Name Result Arguments
bind
object pdispBind
clearBindings
getPoint Point
int whichPoint
getPoint2D Point2D
int whichPoint

PointTextInput ( TextInput )

Properties
Name Type Notes
pointValue Point

PropertiesPanel

Properties
Name Type Notes
hasLength boolean
read only
hasRadius boolean
read only
highAccuracyBoundingBox BoundingBox
read only
keepVisible boolean
length float
read only
name string
read only
numSelectedObjects int
read only
numSelectedPoints int
read only
objectType string
read only
quickBoundingBox BoundingBox
read only
radius float
read only
show boolean
read only
showMaintainProportions boolean
read only
styleHexColor string
read only
styleIndex int
read only
styleName string
read only
styleVaries boolean
read only
useDiameter boolean

Methods
Name Result Arguments
editName
editSize
string which,
string newValue,
boolean varUniform
editStyleIndex
int newIndex
registerCallback
object updatePanelFunc

PropertyBinder

Methods
Name Result Arguments
bind
object pdispTarget,
string targetProperty,
object pdispSource,
string sourceProperty,
boolean twoWay

Selection

Properties
Name Type Notes
filter string

Settings

Properties
Name Type Notes
igesJoinOnImport boolean
lwoScaleToMeters boolean
lwoVertexNormalsStyle string
meshExportCombineSameNamedObjects boolean
objExportOrientation string
objExportScaleFactor float
objExportWriteMaterialAssignments boolean
objExportWriteMtlFile boolean
stlExportFileType string

Methods
Name Result Arguments
editIniFile
getIniPath string
restoreDefaults
string whichGroup = ""

StateButton ( UIControl )

Properties
Name Type Notes
value boolean

TabButton ( UIControl )

Properties
Name Type Notes
active boolean

TabContainer

Properties
Name Type Notes
activeTab string
previousActiveTab string
read only

Text

Properties
Name Type Notes
textid string

TextInput

Properties
Name Type Notes
decimalPoint string
read only

Methods
Name Result Arguments
activateFlyout
activateInline
onInput
string text

UI

Properties
Name Type Notes
browserPosition string
commandDialog CommandUIContainer
read only
commandUI object
read only
fontName string
fontSize float
fractionalDisplayPrecision int
language string
mainWindow Window
read only
maxNumRecentFiles int
maximizeToFullScreen boolean
numDecimalPlaces int
propertiesPanel object
read only
showBrowserPane boolean
showTrailingZeros boolean
showViewportDisplayTime boolean
sidePanePosition string

Methods
Name Result Arguments
alert
string text,
string title = ""
beginUIUpdate
bindPropertyChangeFunc
object object,
string propName,
object func
bindUIToInput
string uIElementId,
string uIElementProperty,
GeometryFactoryInput input
clearCommandUI
clearPickedPoints
createBackgroundImageEditor WaitableObject
createDialog WaitableWindow
string url,
string options = "",
object parentWindow = NULL
createObjectPicker ObjectPicker
createOrientationEditor WaitableObject
ObjectList curves,
GeometryFactory factory,
int whichInput
createPointPicker PointPicker
createPointStreamPicker PointStreamPicker
endUIUpdate
fireUIEvent
string event
formatCoordinate string
float coordinate,
int precision = -1
formatFeetInches string
float coordinate,
int fractionalPrecision = -1
formatNumber string
float number,
int numDecimalPlaces = -1
getActivePointPicker PointPicker
getActiveViewport Viewport
getAvailableLanguages List
getLastClickedViewport Viewport
getLastPickedPoint Point
getRecentFiles object
getText string
string id
getUIPanel object
string panelUrl
getUIPanels List
getViewportUnderMouse Viewport
hideUI
string idToHide
loadCommandUI
string url
redrawViewports
reloadPanels
removeLastPickedPoint
resetVisualStyles
showMenu WaitableWindow
string url,
object parentElement,
int launchSide,
int launchDir
showUI
string idToShow
updateBrowser

UIControl

Properties
Name Type Notes
disabled boolean

Methods
Name Result Arguments
bind
object pdispTarget,
string targetProperty,
object pdispSource,
string sourceProperty,
boolean twoWay
getControl object
getMoi Moi
registerEvents

UIProgressBar ( UIControl )

Properties
Name Type Notes
value any

UIRangeControl ( UIControl )

Properties
Name Type Notes
value any

UnsignedIntegerTextInput ( TextInput )

Properties
Name Type Notes
integerValue int

VectorMath

Methods
Name Result Arguments
add object
object pointA,
object pointB
average object
object pointA,
object pointB
createBoundingBox BoundingBox
createFrame CoordinateFrame
Point origin = NULL,
Point xAxis = NULL,
Point yAxis = NULL
createFrontFrame CoordinateFrame
createPoint Point
float x = 0.0,
float y = 0.0,
float z = 0.0
createRightFrame CoordinateFrame
createTopFrame CoordinateFrame
distance float
object pointA,
object pointB
pointsAreEqual boolean
object pointA,
object pointB
pointsWithinTolerance boolean
object pointA,
object pointB

View

Properties
Name Type Notes
allowRotationTilt3dx boolean
axisLabels string
backgroundImageDrawOrder string
backgroundImageShowIn string
backgroundImageTransparency int
customFillLightLevel float
customKeyLightLevel float
edgeColorMode string
edgeFixedColor int
fixedLightPositions boolean
hiddenLineOpacity int
hiddenLineStyle string
lightDirection Point
lightingStyle string
lineWidth float
linkOrthoViews boolean
lockedObjectsColor int
lockedObjectsUseAlternateColor boolean
meshAngle float
meshDetailedInflections boolean
metallicLighting boolean
panButtonSensitivity float
panSpeed3dx float
reversePan3dx boolean
reversePanButton boolean
reverseRotateButton boolean
reverseRotateMouse boolean
reverseRotation3dx boolean
reverseScrollWheel boolean
reverseZoom3dx boolean
reverseZoomButton boolean
rotateButtonSensitivity float
rotateMiddleButton boolean
rotationSpeed3dx float
rotationStyle string
shadeMode string
showAxisIcon boolean
showEditFrame boolean
showHiddenLines boolean
showViewControls boolean
specularBrightness float
specularFocusSize float
specularHighlights boolean
surfaceColorMode string
surfaceFixedColor int
swapPanZoom3dx boolean
swapTwistTilt3dx boolean
viewportBackgroundColor int
zoomButtonSensitivity float
zoomSpeed3dx float

Methods
Name Result Arguments
getBackgroundImages List
getCPlane CoordinateFrame
resetAll
resetCPlane
screenshot Image
string area,
boolean includeCursor
setCPlane
CoordinateFrame frame,
boolean applyToAllViews = -1,
boolean orientOrthoViews = -1
setCPlaneInteractive

ViewPanel

Properties
Name Type Notes
hideViewControls boolean
mode string

Methods
Name Result Arguments
getViewport Viewport
string viewportName
reverseView
string view
setSize
int width,
int height

ViewlinkContainer

Viewport

Properties
Name Type Notes
cameraFrame CoordinateFrame
read only
cameraPt Point
cplane CoordinateFrame
is3DView boolean
read only
leftRightAngle float
name string
read only
projection string
targetFrame CoordinateFrame
read only
targetPt Point
tiltAngle float
upDownAngle float
viewPanel ViewPanel
read only

Methods
Name Result Arguments
interactiveViewChange
string type
pan
float rightLeft,
float upDown,
float backwardsForwards = 0.0
renderToClipboard
int width,
int height
reset
rotate
string direction,
float angleDegrees = 0.0
setAngles
float upDownAngleDegrees = 0.0,
float leftRightAngleDegrees = 0.0,
float tiltAngleDegrees = 0.0
setCameraAndTarget
Point newCamera,
Point newTarget
zoom
float zoomFactor

WaitableObject

Properties
Name Type Notes
cancelReason string
read only
event string
read only

Methods
Name Result Arguments
allowNestedCancel
boolean newAllow = -1
cancel
waitForEvent boolean

WaitableWindow ( WaitableObject )

Properties
Name Type Notes
htmlDocument object
read only
htmlWindow object
read only
window Window
read only

Window

Properties
Name Type Notes
dialogReturnValue any
read only
isClosed boolean
read only
isMaximized boolean
read only
isMinimized boolean
read only
isRestored boolean
read only
viewpanel ViewPanel

Methods
Name Result Arguments
canChangeMaximizedSize boolean
close
contentChanged
doModal any
endDialog
any varDialogReturnValue
maximize
minimize
restore

addpoint ( GeometryFactory )

Inputs
Index Name Type
0 Is corner boolean

align ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Alignment pt CoordinateFrame
2 Align mode string

alignbackgroundimage ( GeometryFactory )

Inputs
Index Name Type
0 P1 Point
1 P2 Point
2 P3 Point
3 P4 Point

arc3pt ( GeometryFactory )

Inputs
Index Name Type
0 Pt A Point
1 Pt B Point
2 Pt C Point
3 Style string

arccenter ( GeometryFactory )

Inputs
Index Name Type
0 Center CoordinateFrame
1 Start Point
2 End Point
3 Angle float
4 Elliptical boolean

arccontinue ( GeometryFactory )

Inputs
Index Name Type
0 Start pt Point
1 End pt Point
2 Angle float

arctangent ( GeometryFactory )

Inputs
Index Name Type
0 Is radius boolean
1 Pt A Point
2 Pt B Point
3 Pt C Point
4 Radius float
5 Side pt Point

arraycircular ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Center pt CoordinateFrame
2 Num items int
3 Angle float
4 Vertical step float
5 Radial step float
6 Angle mode string

arraycurve ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Path GeomObject
2 Mode string
3 Num items int
4 Distance float
5 Rotation mode string
6 Orientation List
7 Alignment surface GeomObject

arraydir ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Num items int
2 BasePt Point
3 OffsetPt Point
4 ExtentPt Point
5 Mode string

arraygrid ( GeometryFactory )

Inputs
Index Name Type
0 Base pt CoordinateFrame
1 Corner pt Point
2 Width float
3 Height float
4 Extrusion float
5 Extrusion pt Point
6 NumCopies X int
7 NumCopies Y int
8 NumCopies Z int
9 Objects ObjectList

backgroundimage ( GeometryFactory )

Inputs
Index Name Type
0 FileName string
1 Base CoordinateFrame
2 Corner Point

blend ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Orientations List
2 Continuity string
3 Bulge float

booleandifference ( GeometryFactory )

Inputs
Index Name Type
0 Base objects ObjectList
1 Cutting objects ObjectList
2 Keep cutting objects boolean

booleanintersection ( GeometryFactory )

Inputs
Index Name Type
0 Base objects ObjectList
1 Intersectors ObjectList

booleanmerge ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

booleanunion ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

box ( GeometryFactory )

Inputs
Index Name Type
0 Base pt CoordinateFrame
1 Corner pt Point
2 Width float
3 Height float
4 Extrusion float
5 Extrusion pt Point

box3pts ( GeometryFactory )

Inputs
Index Name Type
0 Pt A Point
1 Pt B Point
2 Pt C Point
3 Width float
4 Height float
5 Extrusion float
6 Extrusion pt Point

boxcenter ( GeometryFactory )

Inputs
Index Name Type
0 Base pt CoordinateFrame
1 Corner pt Point
2 Width float
3 Height float
4 Extrusion float
5 Extrusion pt Point

chamfer ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Straight corners boolean
2 Corners List
3 Dist A float
4 Dist B float

circle ( GeometryFactory )

Inputs
Index Name Type
0 Is radius boolean
1 Center CoordinateFrame
2 Radius pt Point
3 Radius float
4 Vertical boolean

circle3pt ( GeometryFactory )

Inputs
Index Name Type
0 Pt A Point
1 Pt B Point
2 Pt C Point

circlediameter ( GeometryFactory )

Inputs
Index Name Type
0 Pt A CoordinateFrame
1 Pt B Point
2 Vertical boolean

circletangent ( GeometryFactory )

Inputs
Index Name Type
0 Is radius boolean
1 Pt A Point
2 Pt B Point
3 Pt C Point
4 Radius float

cone ( GeometryFactory )

Inputs
Index Name Type
0 Is radius boolean
1 Base pt CoordinateFrame
2 Radius pt Point
3 Radius float
4 End pt Point
5 Height float

copy ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Base pt Point
2 Offset pt Point
3 Make copies boolean
4 Distance from edge float
5 From edge cplane CoordinateFrame

curve ( GeometryFactory )

Inputs
Index Name Type

cylinder ( GeometryFactory )

Inputs
Index Name Type
0 Is radius boolean
1 Base pt CoordinateFrame
2 Radius pt Point
3 Radius float
4 End pt Point
5 Height float

delete ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

ellipse ( GeometryFactory )

Inputs
Index Name Type
0 Center pt Point
1 First axis pt Point
2 Second axis pt Point
3 Width float
4 Height float

ellipsecorner ( GeometryFactory )

Inputs
Index Name Type
0 Base corner CoordinateFrame
1 Other corner Point
2 Width float
3 Height float

ellipsediameter ( GeometryFactory )

Inputs
Index Name Type
0 First axis start Point
1 First axis end Point
2 Second axis pt Point

extend ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Boundaries ObjectList

extrude ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Distance pt Point
2 Distance float
3 Dir A Point
4 Dir B Point
5 Cap ends boolean
6 Both sides boolean
7 Path GeomObject
8 Path reversed boolean

fillet ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Straight corners boolean
2 Corners List
3 Radius float
4 Shape string
5 BlendScale float

flip ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

helix ( GeometryFactory )

Inputs
Index Name Type
0 Base point CoordinateFrame
1 End point Point
2 Helix start point Point
3 Start radius float
4 End radius point Point
5 End radius float
6 Num turns float
7 Pitch float
8 Mode string
9 Reverse twist boolean

interpcurve ( GeometryFactory )

Inputs
Index Name Type

intersect ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

join ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

line ( GeometryFactory )

Inputs
Index Name Type
0 Start Point
1 End Point

loft ( GeometryFactory )

Inputs
Index Name Type
0 Sections ObjectList
1 Orientations List
2 Style string
3 Cap ends boolean
4 Closed boolean
5 Profile synch type string
6 Num Profile Points int

merge ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

mirror ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Base pt CoordinateFrame
2 End pt Point
3 Delete inputs boolean

move ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Base pt Point
2 Offset pt Point
3 Make copies boolean
4 Distance from edge float
5 From edge cplane CoordinateFrame

network ( GeometryFactory )

Inputs
Index Name Type
0 U curves ObjectList
1 V curves ObjectList
2 U orientations List
3 V orientations List

offset ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Distance float
2 Offset pt CoordinateFrame
3 Corner type string
4 Trim boolean
5 Flip boolean
6 Both sides boolean
7 Cap ends boolean

planarsrf ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

plane ( GeometryFactory )

Inputs
Index Name Type
0 Base pt CoordinateFrame
1 Corner pt Point
2 Width float
3 Height float

plane3pts ( GeometryFactory )

Inputs
Index Name Type
0 Pt A Point
1 Pt B Point
2 Pt C Point
3 Width float
4 Height float

planecenter ( GeometryFactory )

Inputs
Index Name Type
0 Base pt CoordinateFrame
1 Corner pt Point
2 Width float
3 Height float

point ( GeometryFactory )

Inputs
Index Name Type
0 Pt Point

polygon ( GeometryFactory )

Inputs
Index Name Type
0 Center CoordinateFrame
1 Radius Point
2 Num sides int

polygonedge ( GeometryFactory )

Inputs
Index Name Type
0 Pt A CoordinateFrame
1 Pt B Point
2 Num sides int
3 Flip boolean

polygonstar ( GeometryFactory )

Inputs
Index Name Type
0 Center CoordinateFrame
1 Radius Point
2 Num sides int
3 Second radius Point

polyline ( GeometryFactory )

Inputs
Index Name Type

project ( GeometryFactory )

Inputs
Index Name Type
0 BaseObjects ObjectList
1 TargetObjects ObjectList
2 Mode string
3 Direction start pt Point
4 Direction end pt Point

railrevolve ( GeometryFactory )

Inputs
Index Name Type
0 Profile GeomObject
1 Rail GeomObject
2 Axis start Point
3 Axis end Point
4 Cap ends boolean

rect3pts ( GeometryFactory )

Inputs
Index Name Type
0 Pt A Point
1 Pt B Point
2 Pt C Point
3 Width float
4 Height float
5 Rounded boolean
6 Round pt Point
7 Round radius float

rectangle ( GeometryFactory )

Inputs
Index Name Type
0 Base pt CoordinateFrame
1 Corner pt Point
2 Width float
3 Height float
4 Rounded boolean
5 Round pt Point
6 Round radius float

rectcenter ( GeometryFactory )

Inputs
Index Name Type
0 Base pt CoordinateFrame
1 Corner pt Point
2 Width float
3 Height float
4 Rounded boolean
5 Round pt Point
6 Round radius float

revolve ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Axis start Point
2 Axis end Point
3 Angle float
4 Cap ends boolean

rotate ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Center CoordinateFrame
2 Angle float
3 Ref A Point
4 Ref B Point
5 Make copies boolean

rotateaxis ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Axis start Point
2 Axis end Point
3 Angle float
4 Ref A Point
5 Ref B Point
6 Make copies boolean

scale ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Origin Point
2 Scale factor float
3 Ref A Point
4 Ref B Point
5 Make copies boolean

scale1d ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Origin Point
2 Scale factor float
3 Ref A Point
4 Ref B Point
5 Make copies boolean

scale2d ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Origin CoordinateFrame
2 Scale factor float
3 Ref A Point
4 Ref B Point
5 Make copies boolean

separate ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

shell ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Distance float
2 Direction string
3 Flip boolean

shrinktrimmedsrf ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList

sketchcurve ( GeometryFactory )

Inputs
Index Name Type

sphere ( GeometryFactory )

Inputs
Index Name Type
0 Is radius boolean
1 Center CoordinateFrame
2 Radius pt Point
3 Radius float

sweep ( GeometryFactory )

Inputs
Index Name Type
0 Profiles ObjectList
1 Rails ObjectList
2 Orientations List
3 RailOrientations List
4 Pointy ends string
5 Twist string
6 Maintain height boolean
7 Cap ends boolean
8 Maintain tangent boolean
9 Scaling rail GeomObject
10 Profile synch type string
11 Num Profile Points int

text ( GeometryFactory )

Inputs
Index Name Type
0 Base point CoordinateFrame
1 Text string
2 Font string
3 Bold boolean
4 Italic boolean
5 Type string
6 Height float
7 Extrusion float
8 PreviewMode boolean

trim ( GeometryFactory )

Inputs
Index Name Type
0 Objects ObjectList
1 Cutters ObjectList
2 Fragments ObjectList
3 Mode string
4 Extend lines boolean
5 Use proj intersections boolean
6 Trim pts List

 

About This Document

This document contains information about the Javascript interface to the Moment of Inspiration NURBS-based 3D modeling application.

It contains information gleaned directly from the program intermixed with descriptive comments added by the author based upon study of the MoI user interface files, testing, and, in some cases, educated or wild guesses. As such, the author makes no claims about the accuracy or usefulness of the information presented. If you find information which appears to be missing or incorrect, you should try asking for help on the Moment of Inspiration discussion forum. If you receive a useful answer, you might consider sending the information to the author at david dot morrill at gmail dot com so that it can be incorporated into future versions of this document.

The Document Structure

This document is divided into five major sections:

  • The document title.
  • The table of contents for the Moment of Inspiration classes (excluding GeometryFactory subclasses).
  • The table of contents for the Moment of Inspiration GeometryFactory subclasses.
  • The list of Moment of Inspiration classes (excluding GeometryFactory subclasses).
  • The list of Moment of Inspiration GeometryFactory subclasses.

Note that GeometryFactory subclasses are handled separately:

  • Because of the way information about GeometryFactory subclasses is gleaned from the Moment of Inspiration program structure.
  • Because of the large number of GeometryFactory subclasses defined. The total number of GeometryFactory subclasses exceeds the total number of all other Moment of Inspiration classes combined.
  • Because of the different technique needed to access and use GeometryFactory subclasses compared to the other Moment of Inspiration classes.

The Top-Level Classes Table of Contents

Located just below the document title is the section labeled Moment of Inspiration Javascript Classes, which contains links to information about each of the Moment of Inspiration Javascript accessible classes. Simply click on any class name in this section to go to the section of the document describing that class.

You should also note the button located just to the right of the section title. Clicking this button toggles the Show basic/Show detailed information setting for all of the class descriptions contained in the document. This is similar to the same button contained in each class description, but affects all class descriptions, not just a single description.

The GeometryFactory Subclasses Table of Contents

The GeometryFactory subclasses section is similar to the Moment of Inspiration Javascript Classes section, but contains links to the description of each of the GeometryFactory subclasses.

The button located just to the right of the section title performs exactly the same function as the same button in the Moment of Inspiration Javascript Classes section edscribed previously.

The List of Top-Level Classes

Following the two table of content sections is an alphabetical list of all Javascript accessible Moment of Inspiration classes (excluding the GeometryFactory subclasses, which immediately follow this list).

Each description is divided into three main sections:

  • Class Name: This section contains the name of the class followed by the name of the parent class it subclasses (in parentheses). Both the class and parent class names are links. Clicking the class name returns you to the class table of contents located at the top of the document. Clicking the parent class name takes you to the description of the parent class.

    Following the class and parent class names is the button, which toggles between the Show basic and Show detailed class description modes. Note that clicking this button only toggles the description mode of the containing class.

    If in Show detailed class description mode, the section will also contain a brief description of the purpose and use of the class, as well as a list of other classes which reference the class along with the number of references (in parentheses). Clicking on any referencing class will take you to the description of that class. Note that an asterisk next to a referencing class name indicates that the class is a subclass of the class being described.

  • Properties: An alphabetical list containing the name and type of all properties defined by the class. If the type of the property is another Moment of Inspiration class, you can click on the class name to go to the description for that class. If Show detailed mode is on, the Notes column displays a description of each property's value.

  • Methods: An alphabetical list of all methods defined by the class. In addition to the method name, each entry in the list also displays the type of the result returned by the method, as well as the name, type and possible default value for each of the arguments defined by the method. If any return or argument type is a Moment of Inspiration class, clicking on the class name will take you to a description of the class. If Show detailed mode is on, the Arguments column will also contain a description of the function of the method. If the description references a Moment of Inspiration class, you can also click on the class name in the description to be taken to the description of that class.

The List of GeometryFactory Subclasses

Following the list of all top-level Javascript class descriptions is an alpabetical list of all GeometryFactory subclass descriptions. These descriptions are different from those of the other Moment of Inspiration classes because, as the name implies, these classes are factory classes used to create instances of the various types of geometry supported by Moment of Inspiration.

As such, these classes have no properties or methods, but only a set of construction arguments (referred to as Inputs) that must be defined in order to create a new piece of geometry. The inputs are numbered consecutively from 0 to n, where n varies from class to class. The class description contains a list of the inputs for the class, including the input index, name and data type. If the type is another Moment of Inspiration class, clicking on the class name will take to you the description of that class.

Offline Viewing of the Document

If you have a slow or intermittent Internet connection, you might want to download a copy of this document for local reference on your computer. You can do so by:

  • Downloading the file: moi_js_ref.zip.
  • Unzipping the moi_js_ref.zip file to some location on your file system.
  • Pointing your web browser to the file moi_js_ref\index.htm at the location where you unzipped the file.

About the Author

David C. Morrill was born and grew up in Vermont (Burlington, South Burlington), and now lives in the Philippines (Minglanilla), after spending time in New York (Plattsburgh, Rochester, Brooklyn, Endicott, Poughkeepsie, Kingston, Peekskill, Yorktown Heights), Minnesota (Rochester), Florida (Boca Raton) and Texas (Round Rock).

His current goals are to finally learn how to play the piano, become a decent digital artist, and revolutionize the way programmers and users develop and use applications based upon the many ideas and techniques he's developed during 40 years of thinking about and writing software. Sadly, only the latter seems the least bit likely to happen.

If interested, please feel free to explore the author's web site: dmorrill.com.

© Copyright 2009 by David C. Morrill