Inherits ScriptObject, and UnitConsumer.
Static Public Member Functions | |
static Number | getAsSpatial (String text) |
static Number | getAsSpatialFeedrate (String text) |
static Number | getAsAngularFeedrate (String text) |
static Number | getAsWeight (String text) |
static Number | getAsPower (String text) |
static Number | getAsAngular (String text) |
static Number | getAsTime (String text) |
static MachineConfiguration | createFromXML (String xml) |
static MachineConfiguration | createFromPath (String path) |
static String | getStatusDescription (Integer status) |
Machine configuration. This class describes the physical machine to allow mapping from global orientations and positions to machine axis coordinates.
Constructs a new 3D machine configuration.
MachineConfiguration | ( | Axis | u | ) |
Constructs a new 4-axis machine configuration.
u | The U axis. |
MachineConfiguration | ( | Axis | u, |
Axis | v | ||
) |
Constructs a new 5-axis machine configuration.
u | The U axis. |
v | The V axis. |
MachineConfiguration | ( | Axis | u, |
Axis | v, | ||
Axis | w | ||
) |
Constructs a new 6-axis machine configuration.
u | The U axis. |
v | The V axis. |
w | The W axis. |
addAxis | ( | Axis | axis | ) |
Adds the specified axis.
Returns the clamped ABC angles. Disabled coordinates are set to 0.
|
static |
Loads the machine configuration from the specified path.
|
static |
Loads the machine configuration from the specified XML.
disableMachineRewinds | ( | ) |
Disables machine rewinds.
enableMachineRewinds | ( | ) |
Enables machine rewinds.
Returns the ABC angles for the specified orientation such that the forward direction is maintained. An extra Z rotation in the local frame is normally required to achieve the desired orientation.
orientation | The desired orientation. |
Returns the ABC angles for the specified direction. The solution with the least tilt is returned.
direction | The desired tool direction. |
Returns the secondary ABC angles for the specified direction. Returns the primary solution if the secondary solution does not exist.
direction | The desired tool direction. |
VectorPair getABCByDirectionBoth | ( | Vector | direction | ) |
Returns the ABC angles for both solutions for the specified direction. Both solutions will be identical when only one solution exists. The first solution is the one with the least tilt.
direction | The desired tool direction. |
Vector getABCByPreference | ( | Matrix | orientation, |
Vector | current, | ||
Integer | controllingAxis, | ||
Integer | type, | ||
Integer | options | ||
) |
Returns the preferred ABC angles for the specified orientation such that the forward and optionally right directions are maintained. The preferences are defined in the 'controllingAxis', 'control', and 'options' parameters. Behaves the same as section.getABCByDirection, but does not support the ENABLE_LIMITS flag.
orientation | The desired orientation. |
current | The current machine angles. |
controllingAxis | The axis used to determine the preferred solution. It can be A, B, C for a single axis or ABC to consider all axes. |
type | The preference type. PREFER_PREFERENCE - the preference specified in the createAxis definition. PREFER_CLOSEST- the closest solution. PREFER_POSITIVE - a positive angle. Not valid with ABC. PREFER_NEGATIVE - a negative angle. Not valid with ABC. PREFER_CW - axis moves in a clockwise direction. Not valid with ABC. PREFER_CCW - axis moves in a counter-clockwise direction. Not valid with ABC. |
options | - Options used to control the ABC selection. ENABLE_NONE - disables all options. ENABLE_RESET - respects the 'reset' parameter in the createAxis definition. ENABLE_WCS - solves for a rotary axis perpendicular to the spindle vector as defined by the tool orientation of the operation. ENABLE_ALL - enables all options (ENABLE_RESET and ENABLE_WCS). |
Boolean getAdditiveFFF | ( | ) |
Returns true if additive fff is supported.
Returns the angle in the radians.
Returns the angular feed in rad/min.
Returns the power in W (Watt).
Returns the spatial text in the current unit.
Returns the spatial text in the current unit.
Returns the weight in kg.
Returns the rotary axis bound to the specified coordinate.
Returns the axis by name.
name | The name of the axis (i.e. "X", "Y", "Z", "U", "V", or "W"). |
Axis getAxisU | ( | ) |
Returns the U axis.
Axis getAxisV | ( | ) |
Returns the V axis.
Axis getAxisW | ( | ) |
Returns the W axis.
Axis getAxisX | ( | ) |
Returns the X axis.
Axis getAxisY | ( | ) |
Returns the Y axis.
Axis getAxisZ | ( | ) |
Returns the Z axis.
Number getCenterPositionX | ( | ) |
Returns the X-coordinate center position.
Number getCenterPositionY | ( | ) |
Returns the Y-coordinate center position.
Number getCenterPositionZ | ( | ) |
Returns the Z-coordinate center position.
Returns the current angles closest to the new machine angles. (hidden)
String getCollectChuck | ( | ) |
Returns the collect chuck. Tool-holder interface.
String getControl | ( | ) |
Returns the control.
Integer getCoordinates | ( | ) |
Returns the bits indicating the machine angle coordinates in use.
Bit 0: coordinate 0 is used. Bit 1: coordinate 1 is used. Bit 2: coordinate 2 is used.
Number getDepth | ( | ) |
Returns the width of the machine.
String getDescription | ( | ) |
Returns the description.
Vector getDimensions | ( | ) |
Returns the dimensions of the machine as (width, depth, height).
Returns the direction for the specified ABC angles.
abc | The machine angles. |
Returns the extruder offset X-coordinate.
extruderNo | The extruder number. The first extruder is number 1. |
Returns the extruder offset Y-coordinate.
extruderNo | The extruder number. The first extruder is number 1. |
Returns the extruder offset Z-coordinate.
extruderNo | The extruder number. The first extruder is number 1. |
Number getFeedrateRatio | ( | ) |
Returns the feedrate ratio.
Returns the head ABC angles for the specified ABC angles. Ie. non-head axes are set to zero.
abc | The machine angles. |
Vector getHeadAttachPoint | ( | ) |
Returns the machine head attach point in machine system coordinates.
Returns the head orientation for the specified ABC angles.
abc | The machine angles. |
Number getHeight | ( | ) |
Returns the width of the machine.
Number getHomePositionX | ( | ) |
Returns the X-coordinate home position.
Number getHomePositionY | ( | ) |
Returns the Y-coordinate home position.
Number getHomePositionZ | ( | ) |
Returns the Z-coordinate home position.
Integer getIndexOfAxisById | ( | AxisId | id | ) |
Returns the order of the given axis. Returns -1 if not found.
Boolean getInspection | ( | ) |
Returns true if inspection is supported.
Boolean getJet | ( | ) |
Returns true if jet is supported (waterjet, laser cutter, and plasma cutter).
Integer getMaximumBlockProcessingSpeed | ( | ) |
Returns the maximum block processing speed.
Number getMaximumCuttingFeedrate | ( | ) |
Returns the maximum cutting feedrate.
Number getMaximumFeedrate | ( | ) |
Returns the maximum feedrate.
Number getMaximumSpindlePower | ( | ) |
Returns the maximum spindle power.
Number getMaximumSpindleSpeed | ( | ) |
Returns the maximum spindle speed.
Number getMaximumToolDiameter | ( | ) |
Returns the maximum tool diameter.
Number getMaximumToolLength | ( | ) |
Returns the maximum tool length.
Number getMaximumToolWeight | ( | ) |
Returns the maximum tool weight.
Boolean getMilling | ( | ) |
Returns true if milling is supported.
Number getMinimumSpindleSpeed | ( | ) |
Returns the minimum spindle speed.
String getModel | ( | ) |
Returns the model.
Number getMultiAxisFeedrateBpwRatio | ( | ) |
Returns the multi-axis feed rate bpw ratio. Raises an exception of the feed mode is not FEED_DEGREES_MINUTE. See setMultiAxisFeedrate() for description.
Integer getMultiAxisFeedrateDPMType | ( | ) |
Returns the multi-axis feedrate DPM sub-type. Returns either DPM_STANDARD or DPM_COMBINATION. Raises an exception of the feedrate mode is not FEED_DEGREES_MINUTE. See setMultiAxisFeedrate() for description.
Integer getMultiAxisFeedrateInverseTimeUnits | ( | ) |
Returns the multi-axis feedrate time units. Returns either NVERSE_SECONDS or INVERSE_MINUTES. Raises an exception of the feedrate mode is not FEED_INVERSE_TIME. See setMultiAxisFeedrate() for description.
Number getMultiAxisFeedrateMaximum | ( | ) |
Returns the multi-axis maximum feed rate. See setMultiAxisFeedrate() for description.
Integer getMultiAxisFeedrateMode | ( | ) |
Returns the multi-axis feed mode. Returns FEED_INVERSE_TIME, FEED_DEGREES_MINUTE or FEED_PER_MINUTE. See setMultiAxisFeedrate() for description.
Number getMultiAxisFeedrateOutputTolerance | ( | ) |
Returns the multi-axis feed rate output tolerance. Raises an exception of the feed mode is not FEED_DEGREES_MINUTE. See setMultiAxisFeedrate() for description.
Integer getNumberExtruders | ( | ) |
Returns the number of extruders.
Integer getNumberOfAxes | ( | ) |
Returns the total number of axes.
Integer getNumberOfTools | ( | ) |
Returns the maximum number of tools.
Integer getNumberOfWorkOffsets | ( | ) |
Returns the number of work offsets.
Vector getOptimizedDirection | ( | Vector | direction, |
Vector | currentABC, | ||
Boolean | reverse, | ||
Boolean | forceAdjustment | ||
) |
Adjusts a vector for the rotary table rotations.
direction | Vector to be adjusted. |
currentABC | Current rotary axes positions. |
reverse | Disabled converts the vector from the part system to the machine system. Enabled to convert the vector from machine system to part system. |
forceAdjustment | Set to true if calculation should be done even if axes are not optimized for rotary angles. |
Vector getOptimizedHeads | ( | Vector | currentXYZ, |
Vector | currentABC, | ||
Boolean | reverse, | ||
Integer | optimizeType, | ||
Boolean | forceAdjustment, | ||
Boolean | pivotPoint | ||
) |
Adjust the tool position for the rotary head rotations.
Vector getOptimizedPosition | ( | Vector | currentXYZ, |
Vector | currentABC, | ||
Integer | tcpType, | ||
Integer | optimizeType, | ||
Boolean | forceAdjustment | ||
) |
Adjusts the tool position for the rotary table and head rotations based on the defined kinematics of the machine. You can obtain the adjusted coordinates of the tool position based on the optimization of the specified section instead by using the following command.
section.getOptimzedPosition(...)
currentXYZ | Current tool end point or XYZ position based on conversion. |
currentABC | Current rotary axes positions. |
tcpType | Can be one of the following. TCP_XYZ - Converts the tool end point position to the XYZ machine position. currentXYZ should be the tool end point position. TCP_TOOL - Converts the XYZ machine position to tool end point position. currentXYZ should be the XYZ position. TCP_XYZ_OPTIMIZED - Converts the tool end point position to the XYZ machine position. currentXYZ should be based on the input position. TCP_TOOL_OPTIMIZED - Converts the XYZ machine position to tool end point position. currentXYZ should be the input position. |
optimizeType | Can be one of the following. OPTIMIZE_BOTH - Converts the position based on both the table and head rotations. OPTIMIZE_TABLES - Converts the position based on table rotations. OPTIMIZE_HEADS - Converts the position based on the head rotations. |
forceAdjustment | Set to true if calculation should be done even if axes are not optimized for rotary angles. |
Vector getOptimizedTables | ( | Vector | currentXYZ, |
Vector | currentABC, | ||
Boolean | reverse, | ||
Integer | optimizeType, | ||
Boolean | isVector, | ||
Boolean | forceAdjustment | ||
) |
Adjust the tool position or tool vector for the rotary table rotations. Uses the same arguments as 'getOptimizedPosition' with the addition of 'isVector', when enabled states that 'currentXYZ' is a vector and not an XYZ coordinate.
Returns the matrix for the specified ABC angles. Returns an identity matrix along the spindle vector.
abc | The machine angles. |
Returns the matrix for the specified ABC angles.
abc | The machine angles. |
Returns the other ABC angles for the specified ABC angles. You should normally use getABCByDirection2() to get the secondary solution directly.
For up to 4 axis machines the return value is always the input ABC angles.
The result is undefined if given invalid ABC angles.
abc | The abc angles. |
Number getParkPositionX | ( | ) |
Returns the X-coordinate park position.
Number getParkPositionY | ( | ) |
Returns the Y-coordinate park position.
Number getParkPositionZ | ( | ) |
Returns the Z-coordinate park position.
Vector getPartDimensions | ( | ) |
Returns the maximum allowed part dimensions.
Number getPartMaximumX | ( | ) |
Returns the width of the machine.
Number getPartMaximumY | ( | ) |
Returns the width of the machine.
Number getPartMaximumZ | ( | ) |
Returns the width of the machine.
Returns the position for the specified absolute position and direction. Use getOptimizedPosition() instead to get the rotary axis adjusted position.
p | The absolute position. |
abc | The machine angles. |
Returns the preferred ABC angles for the specified ABC angles.
abc | The abc angles. |
Boolean getReconfigure | ( | ) |
Returns whether machine config allows retract and reconfigure.
Returns the additional rotation required to reach the specified work orientation. For valid machine rotations this will always be a rotation around the Z.
abc | The machine angles. |
desired | The desired work orientation. |
Returns the additional rotation required to reach the specified work orientation. For valid machine rotations this will always be a rotation around the Z. Use this function when the spindle vector can change due to the rotary axis position.
abc | The machine angles. |
desired | The desired work orientation. |
Boolean getRetractOnIndexing | ( | ) |
Returns the retract on indexing mode.
Number getRetractPlane | ( | ) |
Returns the machine retraction plane coordinate.
Vector getRewindStockExpansion | ( | ) |
Returns the stock expansion values used for retracts and rewinds.
Number getSafePlungeFeedrate | ( | ) |
Returns the safe feedrate value used for plunge moves in rewinds.
Number getSafeRetractDistance | ( | ) |
Returns the safe distance value for retract moves in rewinds.
Number getSafeRetractFeedrate | ( | ) |
Returns the safe feedrate value used for retract moves in rewinds.
Boolean getShortestAngularRotation | ( | ) |
Returns shortest angular rotation mode.
Boolean getSingularityAdjust | ( | ) |
Returns true if multi-axis singularity adjustment is enabled. See setSingularity() for description.
Number getSingularityAngle | ( | ) |
Returns the multi-axis singularity angle. See setSingularity() for description. This parameter is in radians.
Number getSingularityCone | ( | ) |
Returns the multi-axis singularity cone. See setSingularity() for description. This parameter is in radians.
Number getSingularityLinearizationTolerance | ( | ) |
Returns the multi-axis singularity linearization tolerance. See setMultiAxisSingularity() for description.
Integer getSingularityMethod | ( | ) |
Returns the multi-axis singularity method. See setSingularity() for description.
Number getSingularityTolerance | ( | ) |
Returns the multi-axis singularity tolerance. See setSingularity() for description.
Vector getSpindleAxis | ( | ) |
Returns the spindle axis without machine rotations.
String getSpindleDescription | ( | ) |
Returns the spindle description.
Returns the description for the specified status code.
Returns the table ABC angles for the specified ABC angles. Ie. non-table axes are set to zero.
abc | The machine angles. |
Vector getTableAttachPoint | ( | ) |
Returns the machine table attach point in machine system coordinates.
Returns the table orientation for the specified ABC angles.
abc | The machine angles. |
Boolean getToolChanger | ( | ) |
Returns true if an automatic tool changer is available.
Number getToolChangeTime | ( | ) |
Returns the tool change time.
Number getToolLength | ( | ) |
Returns the tool length used for head coordinate adjustments.
Boolean getToolPreload | ( | ) |
Returns true if a tool preload is supported.
Boolean getTurning | ( | ) |
Returns true if turning is supported.
Integer getValidityStatus | ( | ) |
Returns a validity status code for the machine configuration. Use getStatusDescription() to convert the status code to an error message.
The following must be true for a configuration to be valid:
String getVendor | ( | ) |
Returns the vendor.
String getVendorUrl | ( | ) |
Returns the vendor url.
Boolean getVirtualTooltip | ( | ) |
Returns the virtual tool end positioning setting.
Number getWeight | ( | ) |
Returns the weight of the machine.
Number getWeightCapacity | ( | ) |
Returns the weight capacity.
Number getWidth | ( | ) |
Returns the width of the machine.
Boolean getWire | ( | ) |
Returns true if wire is supported.
String getXML | ( | ) |
Returns the XML representation of the machine configuration.
Boolean hasCenterPosition | ( | ) |
Returns true if the machine has a valid center position.
Boolean hasHomePositionX | ( | ) |
Returns true if the X-coordinate of the home position is valid.
Boolean hasHomePositionY | ( | ) |
Returns true if the Y-coordinate of the home position is valid.
Boolean hasHomePositionZ | ( | ) |
Returns true if the Z-coordinate of the home position is valid.
Boolean hasParkPosition | ( | ) |
Returns true if the machine has a valid park position.
Boolean is3DConfiguration | ( | ) |
Returns true if this is a 3D machine configuration (i.e. axis U, V, and W are undefined).
Returns true if the specified ABC angles are supported. Disabled coordinates are ignored.
Returns true if the specified direction is supported by the machine configuration.
direction | The tool axis direction. |
Boolean isHeadConfiguration | ( | ) |
Returns true if the configuration is a head configuration (i.e. if any axis excluding X, Y, and Z is a head axis).
Returns true if the specified rotation A, B, and C rotates around the available machine axes only. That is, the rotation around a non-machine axis must be exactly 0.
abc | The A, B, and C rotation. |
Returns true if the specified coordinate is mapped to a machine rotary axis.
By convention coordinate 0, 1, and 2 maps to A, B, and C, respectively.
Boolean isMultiAxisConfiguration | ( | ) |
Returns true if the configuration is a multi-axis configuration (i.e. if any of the U, V, or W axes are defined).
Boolean isReceived | ( | ) |
Returns true if this MachineConfiguration was specified from the CAM system, or a machine file Returns false if the machine configuration was created by the post script.
Boolean isSupported | ( | ) |
Returns true if the configuration is valid. See getValidityStatus() for additional information.
Returns true if the specified machine axis position is supported. That is, within any given ranges for the X, Y, and Z axes.
position | The machine axes position. |
Boolean isTableConfiguration | ( | ) |
Returns true if the configuration is a table configuration (i.e. if all axes excluding X, Y, and Z are in the table).
Returns true if the specified XYZ position is supported. Disabled coordinates are ignored.
Boolean performRewinds | ( | ) |
Returns whether the machine should rewind when needed.
Keep secondary angle when tool axis is perpto rotary axis vector. (hidden)
Maps the specified angles to the preferred ranges. An exception is raised if a requested rotation is not supported for an axis.
abc | The machine angles. |
Maps the specified angles to the current machine angles. An exception is raised if a requested rotation is not supported for an axis. It is assumed that the desired angle difference is less than 180deg always.
abc | The machine angles. |
current | The current machine angles. |
setAdditiveFFF | ( | Boolean | additive | ) |
Sets if additive fff is supported.
setCenterPositionX | ( | Number | x | ) |
Sets the X-coordinate center position. (hidden)
setCenterPositionY | ( | Number | y | ) |
Sets the Y-coordinate center position. (hidden)
setCenterPositionZ | ( | Number | z | ) |
Sets the Z-coordinate center position. (hidden)
setCollectChuck | ( | String | collectChuck | ) |
Sets the collect chuck. Tool-holder interface.
setControl | ( | String | control | ) |
Sets the control.
Sets if the coolant is supported. Maximum limit is 256. COOLANT_OFF is not allowed.
setDepth | ( | Number | depth | ) |
Sets the depth of the machine.
setDescription | ( | String | description | ) |
Sets the description.
setDimensions | ( | Vector | dimensions | ) |
Sets the dimensions of the machine as (width, depth, height).
setFeedrateRatio | ( | Number | feedrateRatio | ) |
Sets the feedrate ratio.
setHeight | ( | Number | height | ) |
Sets the height of the machine.
setHomePositionX | ( | Number | x | ) |
Sets the X-coordinate home position.
setHomePositionY | ( | Number | y | ) |
Sets the Y-coordinate home position.
setHomePositionZ | ( | Number | z | ) |
Sets the Z-coordinate home position.
setInspection | ( | Boolean | inspection | ) |
Sets true if inspection is supported.
setJet | ( | Boolean | jet | ) |
Sets if jet is supported (waterjet, laser cutter, and plasma cutter).
setMaximumBlockProcessingSpeed | ( | Integer | maximumBlockProcessingSpeed | ) |
Sets the maximum block processing speed.
setMaximumCuttingFeedrate | ( | Number | maximumCuttingFeedrate | ) |
Sets the maximum cutting feedrate.
setMaximumFeedrate | ( | Number | maximumFeedrate | ) |
Sets the maximum feedrate.
setMaximumSpindlePower | ( | Number | maximumSpindlePower | ) |
Sets the maximum spindle power.
setMaximumSpindleSpeed | ( | Number | maximumSpindleSpeed | ) |
Sets the maximum spindle speed.
setMaximumToolDiameter | ( | Number | maximumToolDiameter | ) |
Sets the maximum tool diameter.
setMaximumToolLength | ( | Number | maximumToolLength | ) |
Sets the maximum tool length.
setMaximumToolWeight | ( | Number | maximumToolWeight | ) |
Sets the maximum tool weight.
setMilling | ( | Boolean | milling | ) |
Sets if milling is supported.
setMinimumSpindleSpeed | ( | Number | minimumSpindleSpeed | ) |
Sets the minimum spindle speed.
setModel | ( | String | model | ) |
Sets the model.
setMultiAxisFeedrate | ( | Integer | feedMode, |
Number | maximumFeedrate, | ||
Integer | feedType, | ||
Number | outputTolerance, | ||
Number | bpwRatio | ||
) |
Sets the multi-axis settings for feed rates
feedMode | Can be FEED_INVERSE_TIME, FEED_DEGREES_MINUTE or FEED_PER_MINUTE. |
maximumFeedrate | The maximum feed rate value. |
feedType | Option used for selecting inverse time and DPM options. If FEED_INVERSE_TIME is selected this sets the time units and can be set to INVERSE_SECONDS or INVERSE_MINUTES. If FEED_DEGREES_MINUTE is selected this sets whether to use standard DPM or a DPM/FPM combination and can be set to DPM_STANDARD or DPM_COMBINATION. |
outputTolerance | The tolerance for deciding whether to output feed rate value or not, only used for FEED_DEGREES_MINUTE. |
bpwRatio | The pulse weight ratio, only used for FEED_DEGREES_MINUTE. |
setNumberExtruders | ( | Integer | num | ) |
Sets the number of extruders. (hidden)
setNumberOfTools | ( | Integer | numberOfTools | ) |
Sets the maximum number of tools.
setNumberOfWorkOffsets | ( | Integer | numberOfWorkOffsets | ) |
Sets the number of work offsets.
setParkPositionX | ( | Number | x | ) |
Sets the X-coordinate park position. (hidden)
setParkPositionY | ( | Number | y | ) |
Sets the Y-coordinate park position. (hidden)
setParkPositionZ | ( | Number | z | ) |
Sets the Z-coordinate park position. (hidden)
setPartDimensions | ( | Vector | partDimensions | ) |
Sets the maximum allowed part dimensions.
setPartMaximumX | ( | Number | width | ) |
Sets the width of the machine.
setPartMaximumY | ( | Number | depth | ) |
Sets the depth of the machine.
setPartMaximumZ | ( | Number | height | ) |
Sets the height of the machine.
setReconfigure | ( | Boolean | enable | ) |
Sets the reconfigure.
setRetractOnIndexing | ( | Boolean | retractOnIndexing | ) |
Sets the retract on indexing mode.
setRetractPlane | ( | Number | retractPlane | ) |
Sets the machine retraction plane coordinate.
setRewindStockExpansion | ( | Vector | expansion | ) |
Sets the values by which the stock should be expanded when computing retract moves for rewinds.
setSafePlungeFeedrate | ( | Number | safePlungeFeedrate | ) |
Sets the safe feedrate value for plunge moves in rewinds.
setSafeRetractDistance | ( | Number | safeRetractDistance | ) |
Sets the safe distance value for retract moves in rewinds.
setSafeRetractFeedrate | ( | Number | safeRetractFeedrate | ) |
Sets the safe feedrate value for retract moves in rewinds.
setShortestAngularRotation | ( | Boolean | shortestAngularRotation | ) |
Sets shortest angular rotation mode.
setSingularity | ( | Boolean | adjust, |
Integer | method, | ||
Number | cone, | ||
Number | angle, | ||
Number | tolerance, | ||
Number | linearizationTolerance | ||
) |
Sets the multi-axis settings specific for handling singularities in the toolpath.
adjust | Set to 'true' to enable singularity optimization within the post processor. Singularity optimization includes the ability to adjust the tool axis to minimize singularity issues (large rotary axis movement when the tool axis approaches perpendicularity to a rotary axis) and the linearization of the moves around the singularity to keep the tool end point within tolerance. |
method | When set to SINGULARITY_LINEARIZE_OFF it disables the linearization of the moves to keep the tool end point within tolerance of the programmed tool path around the singularity. SINGULARITY_LINEARIZE_ROTARY will linearize the moves around the singularity. Additional points are added to keep the tool within the specified tolerance and is optimized for revolved movement as if the tool were moving around a cylinder or other revolved feature. SINGULARITY_LINEARIZE_LINEAR will also add additional points to keep the tool within tolerance, but will keep the tool end point moving in a straight line. |
cone | Specifies the angular distance that the tool axis vector must be within in reference to the singularity point before the singularity logic is activated. This is usually a small value (less than 5 degrees), since the further away the tool axis is from the singularity, the less noticeable the fluctuations in the rotary axes will be and the less benefit this feature will provide. This parameter is in radians. |
angle | The minimum angular delta movement that the rotary axes have to move prior to considering adjusting the tool axis vector for singularity optimization. This limit is used to keep from adjusting the tool axis vector when the rotary axes do not fluctuate greatly. This is typically set to a vaule of 10 degrees or more. This parameter is in radians. |
tolerance | The tolerance value to used to keep the tool within tolerance when the tool axis is adjusted to minimize rotary axis movement around the singularity. |
linearizationTolerance | The tolerance value to use when addtional points are added to keep the tool end point within tolerance of the programmed move when the tool axis is near the singularity. |
setSpindleAxis | ( | Vector | spindleAxis | ) |
Sets the spindle axis without machine rotations. The default is (0, 0, 1).
setSpindleDescription | ( | String | spindleDescription | ) |
Sets the spindle description.
setToolChanger | ( | Boolean | toolChanger | ) |
Sets if an automatic tool changer is available.
setToolChangeTime | ( | Number | toolChangeTime | ) |
Sets the tool change time.
setToolLength | ( | Number | toolLength | ) |
Defines the tool length used for head coordinate adjustments.
toolLength | - The tool length. |
setToolPreload | ( | Boolean | toolPreload | ) |
Sets the tool preload.
setTurning | ( | Boolean | turning | ) |
Sets if turning is supported.
setVendor | ( | String | vendor | ) |
Sets the vendor.
setVendorUrl | ( | String | vendorUrl | ) |
Sets the vendor url.
setVirtualTooltip | ( | Boolean | virtualPositioning | ) |
Defines if the virtual tool end position should be output.
virtualPositioning | - True if the virtual tool end point position is calculated for head offsets, false if the pivot point is calculated. |
setWeight | ( | Number | weight | ) |
Sets the weight of the machine.
setWeightCapacity | ( | Number | weightCapacity | ) |
Sets the weight capacity.
setWidth | ( | Number | width | ) |
Sets the width of the machine.
setWire | ( | Boolean | wire | ) |
Sets if wire is supported.