<table><tr><td>[[image:Cube-icon.png | link=Getting_Started_with_EM.Cube]] [[image:cad-ico.png | link=Introductory NotesBuilding_Geometrical_Constructions_in_CubeCAD]] [[image:fdtd-ico.png | link=EM.Tempo]] [[image:prop-ico.png | link=EM.Terrano]] [[image:static-ico.png | link=EM.Ferma]] [[image:planar-ico.png | link=EM.Picasso]] [[image:metal-ico.png | link=EM.Libera]] [[image:po-ico.png | link=EM.Illumina]]</td><tr></table>[[Image:Back_icon.png|30px]] '''[[EM.Cube | Back to EM.Cube Main Page]]'''<br />
===Operational Modes of CubeCAD Tools=Align Tool==
Each of CubeCAD tools performs a certain operation or transformation on one or more selected CAD objects. [[EM.Cube]] provides a number of different ways to use these tools. First, you have to activate a CAD tool. Each tool has a button with a particular icon on '''Tools Toolbar''', which you can click to activate. If you hover your mouse on one of these buttons before clicking, a small tooltip shows up displaying the name of that tool. You can also enable a tool from '''Tools Menu''' at the top of the screen. Many tools have a keyboard shortcut, which you simply type on your keyboard to enable that tool. You can also access some tools from the contextual menu of individual objects either by right-clicking on the surface of an object in the project workspace or by right-clicking on the object's name in the navigation tree. When you access a CAD tool from Tools Toolbar or Tools Menu, one or more '''Help Tips''' appear on the upper right corner of the screen, which guide you along the different steps of usage of the enabled tool. The first step in using each CAD tool is to select one or more objects. When you activate a tool from Tools Toolbar or Tools Menu, a help tip prompts you to select an object by clicking on it. If the enabled tool allows the selection of more than one object (e.g. Group Tool), you can select the objects one by one and then press the '''Enter Key''' to finish the object selection. At this point, another help tip instructs you to take the next action. For most tools, alternatively, you can first select the object(s) and then activate the tool in one of the ways mentioned earlier. This is often more convenient and spares a few mouse clicks.ICON: None
===Working with Generic Objects===MENU: '''Tools → Basic → Align'''
[[EM.Cube]] offers a large selection of parameterized native objects. Many of CubeCAD tools, such as translate, rotate or mirror, transform native objects to other objects of the same kind or result in the creation of other types of native objects like polylines and polystrips. Some other CAD tools result in the creation of a generic solid object, a generic surface object or a generic curve object. [[EM.Cube]]'s generic objects have a limited number of parameters. They have three '''LCS Coordinates''' and three '''Rotation Angles''', which determine their location and orientation in the project workspace. You can change these parameters by accessing the property dialog of a generic object. They also have '''Dimension''' parameters, which represent the size of the their bounding box along the three principal directions, but they are not editable. Most CAD import operations bring in external CAD files to your project workspace as generic objects.KEYBOARD SHORTCUT: None
===Working with Transform Objects===FUNCTION: Aligns one or more objects by the specified face(s) of their bounding box along the specified coordinate plane(s).
Many of CubeCAD operations and transformations result in the creation of either native objects like polylines and polystrips or in generic curve, surface or solid objects. Each of the following tools, however, creates a special "Transform Object"TO ALIGN AN OBJECT SELECTION:
# Group ToolSelect the object(s) to be aligned.# Array ToolSelect '''Basic → Align''' from '''Tools''' menu.# Subtract ToolThe Align dialog opens up. Check all the direction boxes for the alignment. # Union ToolFor each of the selected alignment directions, select the positive or negative face. # Intersect ToolFor each of the selected alignment directions, enter a value for the coordinate plane where you want to move the specified faces of the selected objects. # Extrude Tool# Loft Tool# Revolve Tool# Polymesh Tool# Random Group Tool# Roughen Tool Each transform SPECIAL CASES OR EXCEPTIONS: If two principal directions are checked for alignment, the object has a special property dialog(s) are effectively aligned by an edge. The Group tool and the If three Boolean operation toolsprincipal directions are checked for alignment, Subtract, Union and Intersect, have similar property dialogs and allow you to access their constituent objectsthe object(s) are effectively aligned by a vertex or node. The property dialog Note that while alignment of composite box or Boolean rectangle strip objects has a '''Member List''' containing the names is intuitive, alignment of all constituent other objects. You can highlight and select any member from this list and click is based on the '''Edit''' button faces of the dialog to open up its property dialog, where you can edit its propertiestheir bounding boxes and may not be as intuitive. Â Â PYTHON COMMAND(S):
The property dialog of Extrusion, Loft, Revolution, Polymesh and Rough objects has an '''Edit Primitive''' button, which lets you access the property dialog of the original object used for the generation of the selected transform object. After you finish editing the primitive align(object, you will return to the property dialog of the transform object. Array and Random Group objects are arrangements of clones of an original key object. In these casesdir, the '''Edit Primitive''' button opens up the property dialog of the key element.coord_value)
==Angle Tool==
</tr>
<tr>
<td> [[Image:array_tool_6.png|thumb|left|640px|Creating Rotating a rotated array of rotated rectangle strip objects.]] </td></tr><tr><td> [[Image:Array_tool_7_new.png|thumb|left|640px|Creating a 4x2 array of rotated rectangle strip objects.]] </td>
</tr>
</table>
* Intersection
Boolean operations work only with surface and [[Solid Objects|solid objects]]. In other words, they cannot be applied to [[Curve Objects|curve objects]]. As a general rule of thumb, you should perform a Boolean operation on two or more objects of the same type, and resulting object will be of the same type. Mixing solid and [[Surface Objects|surface objects]] in Boolean operations may result in an undesirable outcome. The Boolean Union of two objects that do not overlap each other physically is similar to grouping them into a composite object. Subtracting two objects that do not overlap each other physically results in the deletion of the object to be subtracted.
The result of a Boolean CAD operation on two or more objects is a new object of Boolean Type. The property dialog of a Boolean object is similar to that of a composite object and contains a member list. You can highlight and select any member from the list and open its own property dialog for editing. You can also use '''Consolidate Tool''' to convert a Boolean object into a generic surface or solid object. In that case, you won't have access to the properties of the individual member object any longer.
Example 1: Bridging Two Horizontal Surfaces [[File:Cad_manual-69_surfaces.png|600px|bridge a]] Example 2: Bridging Multiple Lines
In this example we have created a series of beveled planes by bridging between four line segments. Using this method allows you to construct planes whose edges are perfectly aligned to each other. The resulting planes can then be joined together via the Union Tool to form a solid surface.
[[File:cad_manual-69_tn.jpgpng|600px|bridge a]] [[File:cad_manual-70_tn.png|600px|bridge]] ==Consolidate Tool== ICON: [[File:consolidate_tool_tn.png]]  MENU: '''Tools → Transform → Consolidate''' KEYBOARD SHORTCUT: '''Shift+C''' FUNCTION: Converts open polymesh objects to generic surface objects and converts closed polymesh objects to generic solid objects  TO CONSOLIDATE AN OBJECT SELECTION: # Activate the '''Consolidate Tool'''.# Click on the polymesh object(s) you want to consolidate one by one and press the '''Enter Key''' when done. # Generic surface of solid versions of the selected polymesh objects appear in the project workspace.   SPECIAL CASES OR EXCEPTIONS: You can also use the Consolidate Tool to convert Boolean objects to generic surface or solid objects. In that case, you will lose access to the properties of the individual constituents of the original Boolean object.  PYTHON COMMAND: consolidate(object) ==Convert To Box== ICON: None  MENU: '''Tools → Transform → Convert → Box''' KEYBOARD SHORTCUT: None FUNCTION: Replaces any selected object with its bounding box  TO CONVERT AN OBJECT SELECTION TO BOX: # Select the object(s) to be converted.# Select '''Transform → Convert → Box''' from '''Tools''' menu.   PYTHON COMMAND: convert_box(object) ==Convert To Line== ICON: None  MENU: '''Tools → Transform → Convert → Line''' KEYBOARD SHORTCUT: None FUNCTION: Replaces any selected object with a line object connecting the minimum and maximum vertices of its bounding box  TO CONVERT AN OBJECT SELECTION TO LINE: # Select the object(s) to be converted.# Select '''Transform → Convert → Line''' from '''Tools''' menu.   PYTHON COMMAND: convert_line(object) ==Convert To Point== ICON: None  MENU: '''Tools → Transform → Convert → Point''' KEYBOARD SHORTCUT: None FUNCTION: Replaces any selected object with a point object located at the center of its bounding box  TO CONVERT AN OBJECT SELECTION TO POINT: # Select the object(s) to be converted.# Select '''Transform → Convert → Point''' from '''Tools''' menu.   PYTHON COMMAND: convert_point(object) ==Convert To Rectangle Strip== ICON: None  MENU: '''Tools → Transform → Convert → Rectangle Strip''' KEYBOARD SHORTCUT: None FUNCTION: Replaces any selected planar object with its bounding rectangle TO CONVERT AN OBJECT SELECTION TO RECTANGLE STRIP: # Select the object(s) to be converted.# Select '''Transform → Convert → Rectangle Strip''' from '''Tools''' menu. Â
[[FilePYTHON COMMAND:cad_manual-70_tn.jpg|bridge]]convert_rect(object)
==Distance Tool==
<table>
<tr>
<td> [[Image:cad_manual-73_tn_new.png|thumb|600px720px|A pyramid object exploded into its constituent faces. One face has been selected and subsequently removed.]] </td></tr></table> ==Extents Tool== ICON: [[File:info_tool_tn.png]]  MENU: '''Tools → Measure → Extents''' KEYBOARD SHORTCUT: '''Shift+E''' FUNCTION: Measures the length, surface area or volume of a geometric object  TO MEASURE THE EXTENTS OF AN OBJECT: # Activate the '''Extents Tool'''.# Hover the mouse over any object in the project workspace.# A dialog pops up at the lower right corner of the screen. If the highlighted object is a curve, the dialog shows its arc length. If the highlighted object is a surface, the dialog shows its area. If the highlighted object is a solid, the dialog shows both its volume and total surface area.   SPECIAL CASES OR EXCEPTIONS: You can compute the extents of several objects successively.  PYTHON COMMAND: get_length(object) get_area(object) get_volume(object) <table><tr><td> [[Image:Extents1_new.png|thumb|400px|Measuring the surface area and volume of a solid object.]] </td></tr><tr><td> [[Image:Extents2_new.png|thumb|400px|Measuring the length of a curve object.]] </td>
</tr>
</table>
KEYBOARD SHORTCUT: '''Shift+F'''
FUNCTION: Creates a planar surface object from a closed curve object or from a set of [[Curve Objects|curve objects]] that together form a closed region
TO FILL CURVE OBJECT(S):
# Activate the '''Fill Tool'''.
# Click on the curve object(s) you want to fill one by one to select them and press the '''Enter Key''' when done.
# A new planar surface object is created in the project workspace which replaces the previously selected [[Curve Objects|curve selectedcurve objects]].
KEYBOARD SHORTCUT: '''Shift+L'''
FUNCTION: Adds rounded bevels to hard-angled corners of one or more surface or [[Curve Objects|curve objects]]
TO FILLET AN OBJECT:
# The default option is a circular arc fillet with a radius of 10 project units. You may choose another fillet type: Linear (Chamfer), G1, G2 or G3 Blend.
# Make sure to click the OK button of the Fillet Dialog to finalize the operation.
Â
SPECIAL CASES OR EXCEPTIONS:
Â
PYTHON COMMAND: fillet(object,radius)
<table>
<tr>
<td>
[[File:Fillet_tn.png|thumb|left|720px|The fillet tool.]]
</td>
</tr>
</table>
==Geometric Analysis Tool== ICON: [[File:fillet_tnExtends_tool_tn.jpgpng]]  MENU: '''Tools → Measure → Geometric Analysis''' KEYBOARD SHORTCUT: '''Shift+E''' FUNCTION: Measures the length, surface area or volume of a geometric object  TO PERFORM GEOMETRIC ANALYSIS AND MEASURE THE EXTENTS OF AN OBJECT: # Activate the '''Geometric Analysis Tool'''.# Hover the mouse over any object in the project workspace.# A dialog pops up at the lower right corner of the screen. If the highlighted object is a curve, the dialog shows its arc length. If the highlighted object is a surface, the dialog shows its area. If the highlighted object is a solid, the dialog shows both its volume and total surface area.   SPECIAL CASES OR EXCEPTIONS: You can compute the extents of several objects successively.  PYTHON COMMAND: get_length(object) get_area(object) get_volume(object) <table><tr><td> [[Image:Extents1_new.png|filletthumb|550px|Measuring the surface area and volume of a solid object.]] </td></tr><tr><td> [[Image:Extents2_new.png|thumb|550px|Measuring the length of a curve object.]]</td></tr></table>
==Group Tool==
This example illustrates lofting from the edge of the lower box to a corner point on the center rectangle.
[[File:cad_manual-63_tn.jpgpng|600px|Loft Example 1]]
Example 2: Using Lofts To Create A Four-Sided Pyramid
[[File:cad_manual-64_tn.jpgpng|600px|Loft Example 2]] ==Merge Tool== ICON: [[File:merge_tool_tn.png]]  MENU: '''Tools → Basic → Merge''' KEYBOARD SHORTCUT: '''Shift+M''' FUNCTION: Combines nodal curves (polylines or NURBS curves) into a new curve or combines polymesh objects aligned along cell edges into a new polymesh object  TO MERGE AN OBJECT SELECTION: # Activate the '''Merge Tool'''.# Click on the objects of the same type you want to merge one by one and press the '''Enter Key''' when done.# The original object selection is replaced with a larger object of the same type.   If there is a gap between the objects to be merged, it is eliminated as a result of merging as the last and first nodes of the two separate curves become part of a single node list.  SPECIAL CASES OR EXCEPTIONS: In order to merge one or more polymesh objects, they have to have one or more cells strictly and exactly lined up along common edges.   PYTHON COMMAND: merge_curve(object_1,object_2)  [[File:merge1_tn.png|Filling Outlines]] Two NURBS curve to be merged into one. [[File:merge2_tn.png|Filling Outlines]] The resulting merged NURBS curve with the combine nodes.
==Mirror Tool==
</table>
==Translate Pipe-Sweep Tool==
ICON: [[File:move_tool_tnpipe_tool_tn.png]]
MENU: '''Tools → Basic Transform → TranslatePipe-Sweep'''
KEYBOARD SHORTCUT: '''TShift+I'''
FUNCTION: Moves Creates a tubular object of a specified radius from one or more curve objects to a different location by a specified translation vector
TO TRANSLATE AN PIPE-SWEEP CURVE OBJECT SELECTION(S):
# Activate the '''Translate Pipe-Sweep Tool'''.# Click on the curve object(s) you want to translate one by one and press the '''Enter Key''' when done.# Next, you have to establish the translation vector. Leftpipe-click on a point in the project workspace to specify the start of the vector. # Drag the mouse to draw a ghost of the translation vector in the desired direction. Left-click a second point to specify the end of the vector. # The object selection is translated by the specified vectorsweep. # A dialog pops up on the lower right corner of the screen where you can fine-tune or modify the translation vector before finalizing the translate operation.# Using the Translate Dialog, you can also simply type in the final destination coordinates for pipe radius and cap the resulting surface object to turn it into a solid object selection.
PYTHON COMMAND(S)SPECIAL CASES OR EXCEPTIONS:You cannot pipe-sweep a polyline object because of its sharp corners. However, you can first turn the polyline into a smoother curve object using the Fillet Tool and then pipe-sweep it.
translate_by(object,dx,dy,dz)
translate_toPYTHON COMMAND: pipe_sweep(object,x0,y0,z0radius)
<table>
<tr>
<td> [[Image:translate1_tn_newpipe-tool_tn_new.png|thumb|540px600px|Translating an Using pipe-sweep tool to turn a spiral curve into a solid object seletion at the same time.]] </td>
</tr>
</table>
<b>Moving Objects Around Using Snap Points</b>==Polygonize Tool==
The simplest and quickest way to move an object is to hover your mouse over a snap point of the object to highlight it. Then type the keyboard shortcut '''T'''. The cursor latches to the selected snap point and the Translate Dialog pops up at the lower right corner of the screen. Without clicking the mouse, begin to drag the object in the project workspace. A ghost of the object starts to move around. Click the left mouse button at the desired location to drop the object. You can fine-tune the final destination using the Translate DialogICON: [[File:polygonize_tool_tn. png]]
<b>Constrained Translation</b>MENU: '''Tools → Transform → Polygonize'''
When you use a snap point to translate an object, you can use the keyboard's '''Alt''' and KEYBOARD SHORTCUT: '''Shift+P''' keys to constrain the object move in certain directions. The type of constraint depends on which snap point you pick to translate the object. The following rules apply:
* With a face snap point selected, you can constrain translate to FUNCTION: Discretizes the direction normal to that face only by holding the '''Alt Key''' down during dragging. You can also constrain translate to the plane boundary of that face only by holding the '''Shift Key''' down during dragging.* With an edge snap point selected, you can constrain translate to the line along that edge only by holding the '''Shift Key''' down during dragging. You can also constrain translate to the line normal to that edge only by holding the '''Alt Key''' down during dragging.* With a vertex snap point selected, you can constrain translate to the lines along the two edges passing through that vertex only by holding the '''shift Key''' curve object or '''Alt Key''' down during dragginga curved planar surface object into linear segments.
<table><tr><td> [[ImageTO POLYGONIZE OBJECT(S):consttranslate1_tn_new.png|thumb|320px|Translating a box from a face snap point while holding the Alt Key down.]] </td></tr><tr><td> [[Image:consttranslate2_tn_new.png|thumb|320px|Translating a box from an edge snap point while holding the shift Key down.]] </td></tr><tr><td> [[Image:consttranslate3_tn_new.png|thumb|320px|Translating a box from a vertex snap point while holding the shift Key down.]] </td></tr></table>
==Rotate # Activate the '''Polygonize Tool=='''.# Click on the object(s) you want to polygonize one by one and press the '''Enter Key''' when done. # The discretized versions of the selected objects appears in the project workspace.# A dialog pops up on the lower right corner of the screen where you can modify the side length of the resulting polygonal objects.# Make sure to click the OK button of the dialog to finalize the operation.
ICON: [[File:rotate_tool_tn.png]]
MENU: '''Tools → Basic → Rotate'''The Polygonize Tool converts a surface object into a polystrip and converts a curve object into a polyline.
KEYBOARD SHORTCUT: '''R'''
FUNCTIONSPECIAL CASES OR EXCEPTIONS: Rotates one or more You cannot polygonize solid objects about a specified axis of rotation by a specified angle.
TO ROTATE AN OBJECT SELECTION:
# Activate the '''Rotate Tool'''.# Click on the object(s) you want to translate one by one and press the '''Enter Key''' when done.# Next, you have to establish the rotation axis. Left-click on a point in the project workspace to specify the pivot of the axis. By default, the rotation axis is oriented along the Z-axis. # Use the keyboard's '''Up Arrow''' or '''Down Arrow''' keys to change the direction of the rotation axis or cycle through all the three X, Y, Z directions. # Drag the mouse to establish the rotation angle. If you hold down the '''Shift Key''' while dragging the mouse, the rotation angle will increment in step of 15 degrees.# When you reach the desired rotation angle, left-click to drop the object selection. # A dialog pops up on the lower right corner of the screen where you can fine-tune or modify the rotation angle, the pivot coordinates or the direction of the normal vector along the rotation axis before finalizing the rotate operation. You can align the rotation axis using the snap points of other objects in the project workspace. By default, if you click at a blank point, you establish a rotation axis normal to the current work plane. Instead, you can click at the edge snap point of another object to set the rotation axis along that edge. Or you can click on the face snap point of another object to set the rotation axis along the normal to that face. Once the rotation axis has been established, a local rotation coordinate system is created, and you can cycle through the three possible axes using the keyboard's '''Up Arrow''' or '''Down Arrow''' keys.  PYTHON COMMAND: rotatepolygonize(object,rot_angle_degree,rot_axis_x,rot_axis_y,rot_axis_zside_length)
<table>
<tr>
<td> [[Image:rotate1_tn_newpolygonize1_tn_new.png|thumb|540px500px|Rotating an object selection at A circle strip to be polygonized.]] </td></tr><tr><td> [[Image:polygonize3_tn_new.png|thumb|500px|The polygonized version of the same timecircle strip with a side length of 30 units.]] </td>
</tr>
</table>
<b>Rotating Objects Locally Using Snap Points</b>==Polymesh Tool==
The simplest and quickest way to rotate an object locally is to hover your mouse over a snap point of an object to highlight it. Then type the keyboard shortcut '''R''' to enable the Rotate Tool. A trident depicting a local coordinate system appears at the selected snap point. You can now rotate the selected object by the desired angle. Bear in mind that each snap point has a default axis of rotation. You can cycle through the three rotational axes using the '''Up Arrow''' or '''Down Arrow''' keys. You can also constrain the angle of rotation to 15° increments by holding down the '''Shift Key'''. Left click to complete the rotationICON: [[File:polymesh_tool_tn.png]]
<table><tr><td> [[ImageMENU:rotate2_tn_new.png|thumb|540px|Rotating an object selection about an edge of another object.]] </td></tr></table>'''Tools → Transform → Polymesh'''
==Scale Tool==KEYBOARD SHORTCUT: '''P'''
ICONFUNCTION: [[File:scale_tool_tn.png]] Discretizes one or more surface or solid objects into a set of triangular cells
MENUTO POLYMESH AN OBJECT SELECTION: '''Tools → Basic → Scale'''
KEYBOARD SHORTCUT: # Activate the '''SPolymesh Tool'''.# Click on the object(s) you want to polymesh one by one and press the '''Enter Key''' when done. # Discretized versions of the selected objects appear in the project workspace. # A dialog pops up on the lower right corner of the screen which, allows you to change the edge length of the triangular cells. # Make sure to click the OK button of Polymesh Dialog to finalize the operation.
FUNCTION: Scales the size (and generally coordinates) of one or more objects by specified scaling vectors
TO SCALE AN OBJECT SELECTION:Naturally, a solid object is turned into a closed polymesh (or a solid polymesh), while a surface object is converted to an open polymesh (or a surface polymesh). Each polymesh object is made up of a number of nodes, edges and faces.
# Activate the '''Scale Tool'''.
# Click on the object(s) you want to scale one by one and press the '''Enter Key''' when done.
# Next, you have to establish the baseline scale vector. Left-click on a point in the project workspace to specify the start of the baseline scale vector. Then, drag the mouse to draw the vector and left-click to finish the baseline scale vector.
# Now you have to specify the final scale vector. The final scale vector has the same start point as the baseline scale vector but a different end point which determines the scale factor. As you drag the mouse, you will see the second vector drawn on top of or next to the baseline vector. Left-click one more time when you get the desired transformation.
# The scale operation performs a mapping transformation on the object selection from the baseline scale vector onto the final scale vector. As you drag the mouse to establish the end point of the final scale vector, the object selection changes both size and location as a result of the scale transformation.
# A dialog pops up on the lower right corner of the screen where you can fine-tune or modify the scale factors along the three principal axes as well the coordinates of the scale origin.
SPECIAL CASES OR EXCEPTIONS: You cannot use the Polymesh Tool with curve objects.
By defaultPYTHON COMMAND: polymesh(label, objects are scaled uniformly, i.e. the scaling factors along the three principal axes are equal. From the Scale Dialog, you can change the three scaling factors arbitrarily to achieve any desired shape. Non-uniform scaling of certain objects like cylinder, cone, sphere, torus, etc., does not take effect because it would destroy the object's symmetry. On the other hand, you can enforce non-uniform scaling of objects like box, ellipsoid, ellipse strip or super-quadratic curve. edge_length)
Â
PYTHON COMMAND: scale(object,scale_factor)
<table>
<tr>
<td> [[Image:scale1_tn_newpolymesh1_new.png|thumb|540pxleft|Scaling 600px|Converting a pyramid to a box polymesh object in all three directions.]] </td>
</tr>
</table>
<b>Scaling Objects Locally Using Snap PointsModifying a Polymesh Object</b>
Snap points provide an easier way of scaling objects without changing their location. Hover your mouse over a snap point of After you convert an object to highlight it a polymesh, you can edit its properties through the polymesh's property dialog. You can change the mesh type from '''Regular''' to '''Structured''' and type vice versa from the keyboard shortcut dropdown list labeled '''SMesh Type'''. This establishes the scale origin at the selected snap point. Then, select the end point of the baseline scale vector, which You can be another snap point of also change the same object. It is convenient '''Edge Length''' to select a vertex of an object as increase or decrease the scale origin and select an adjacent vertex as the end point of the baseline scale vectormesh resolution. Next, you need to determine All the final scale vector. If you drag the mouse out of the objectnodes, you will expand it. If you drag the mouse inside the object faces and towards the scale origin, you will shrink itedges of a polymesh can be accessed for further editing.
<table><tr><td> [[Image:scale2_tn_newEach polymesh object is made up of a number of nodes, edges and faces.png|thumb|540px|Scaling You can access the individual nodes, edges or faces. The '''Mode''' section of the property dialog has three radio buttons labeled '''Node''', '''Face''' and '''Edge'''. When the Node Mode is selected, a small red ball at the location of the selected node. You can cycle through all the nodes from the '''Active Node''' box object or using the keyboard's '''Up Arrow''' or '''Down Arrow''' keys. The world coordinates of the active node are displayed in all three directionsthe property dialog. You can change these values and fine tune the position of any node. You can also delete the selected node by clicking the '''Delete''' button next to the node index.]] </td></tr></table>
<b>Constrained Scaling</b>When the Face Mode is selected, the perimeter of the active face is highlighted as a red triangle. You can cycle through all the faces from the '''Active Face''' box or using its spin buttons. The world coordinates of the centroid of the active face are displayed in the property dialog, but they are greyed out and cannot be edited. However, you can insert a new node at the location of the centroid of the active face and split it into three new smaller faces. To do so, click the '''Insert''' button of the dialog. At this time, a temporary local coordinate system is established at the centroid of the selected face with the local X-axis parallel to the first edge of the selected face and the local Z-axis normal to the plane of the selected face. The three active node coordinate boxes in this case represent the offset coordinates of the new node. You have an opportunity to type in new offset values to modify the location of the new node.
While dragging When the mouse to scale an object selectEdge Mode is selected, if you hold the active edge is highlighted as a red line segment. You can cycle through all the edges from the '''Shift KeyActive Edge''' downbox or using its spin buttons. The world coordinates of the midpoint of the active edge are displayed in the property dialog, but they are greyed out and cannot be edited. However, you can constrain insert a new node at the scaling to location of the direction along midpoint of the baseline scale vector onlyactive edge and split it into two new smaller edges. AlternativelyTo do so, if you hold click the '''Alt KeyInsert''' downbutton of the dialog. As a result of this operation, you can constrain the scaling two triangular faces sharing the selected edge are split into four new smaller faces. At this time, a temporary local coordinate system is established at the midpoint of the selected edge with the local X-axis parallel to the direction selected edge and the local Z-axis normal to is aligned along the baseline scale vector onlyaverage of the normal vectors of the two triangular faces sharing that edge. If The three active node coordinate boxes in this case represent the baseline vector is parallel to one offset coordinates of the principal axes, new node. You have an opportunity to type in new offset values to modify the "Shift Contstraint" varies only one scaling factor, while location of the "Alt Constraint" varies two scaling factor simultaneouslynew node. {{Note|Inserting new nodes on faces allows you to increase the mesh resolution locally at certain selected cells. Inserting new nodes on edges allows you to expand a polymesh object outward from its boundaries.}}
<table>
<tr>
<td> [[Image:scale3_tn_newpolymesh2_tn.png|thumb|320pxleft|Constrained scaling 360px|Selecting a node of a polymesh object.]] </td><td> [[Image:polymesh3_tn.png|thumb|left|360px|Editing the coordinates of a node of a box along an edgepolymesh object.]] </td>
</tr>
<tr>
<td> [[Image:scale4_tn_newpolymesh4_tn.png|thumb|320pxleft|Constrained scaling 360px|Selecting a face of a box normal to polymesh object.]] </td><td> [[Image:polymesh5_tn.png|thumb|left|360px|Inserting a new node at a face's centroid.]] </td></tr><tr><td> [[Image:polymesh6_tn.png|thumb|left|360px|Selecting an edge of a polymesh object.]] </td><td> [[Image:polymesh7_tn.png|thumb|left|360px|Inserting a new node at an edge's midpoint.]] </td>
</tr>
</table>
==Subtract Rail-Sweep Tool==
ICON: [[File:subtract_tool_tnsweeo_tool_tn.png]]
MENU: '''Tools → Basic Transform → SubtractRail-Sweep'''
KEYBOARD SHORTCUT: '''DShift+R'''
FUNCTION: Subtracts one Sweeps a curve or more objects from planar surface object along a specified path represented by another curve object in the Boolean sense
TO SUBTRACT FROM AN RAIL-SWEEP CURVE OBJECT(S):
# Activate the '''Subtract Rail-Sweep Tool'''.# Click on the curve object you want to subtract from and press rail to select it. This establishes the '''Enter Key'''sweep path.# Click Next, click on the a surface or curve object(s) you want to subtract from sweep along the previously selected specified rail path. # A ghost of a new three-dimensional object one by one and press appears in the project workspace. You can use '''Enter KeyUp Arrow''' when doneor '''Down Arrow''' keys to rotate the cross section of the new object. # All Make sure to click the original selected objects are replaced with a new Boolean object with a new default name'''Enter Key''' to finalize the construction.
PYTHON COMMAND: subtract(labelThe LCS of the surface or curve object you want to sweep must positioned at the origin of coordinates on the default XY work plane. This profile will then be projected and swept along the rail path perpendicular to its curve. If the LCS of the surface or curve profile resides at a location other than the origin,object_1you can use the '''Left Arrow''' and '''Right Arrow''' keys to slide the swept profile closer or further away from the origin. Sliding the profile changes the projection angle relative to the parent curve,object_2)which might change the shape of the resulting swept object.
<table>
<tr>
<td> [[Image:Cad_manual-49_tn_new.png|thumb|540px|(Left) Two overlapping boxes and (Right) the result of their Boolean subtraction after subtracting the gray box from the blue one.]] </td>
</tr>
</table>
==Union SPECIAL CASES OR EXCEPTIONS: You cannot rail a polyline object because of its sharp corners. However, you can first turn the polyline into a smoother curve object using the Fillet Tool==and then rail it.
ICON: [[File:union_tool_tn.png]]
MENU: '''Tools → Basic → Union''' KEYBOARD SHORTCUT: '''U''' FUNCTION: Forms a union of an object selection in the Boolean sense TO UNION AN OBJECT SELECTION: # Activate the '''Union Tool'''.# Click on the objects you want to union one by one and press the '''Enter Key''' when done.# The original object selection is replaced with a new Boolean object with a new default name.   PYTHON COMMAND: unionrail_sweep(label,object_1,object_2)
<table>
<tr>
<td> [[Image:cad_manualsweep-50_tn_newtool_tn_new.png|thumb|540px720px|(Left) Two overlapping boxes and (Right) the result of their Boolean unionRailing a rectangle strip object along a spiral curve.]] </td>
</tr>
</table>
==Slice Random Group Tool==
ICON: [[File:slice_tool_tnrandom_group_tool_tn.png]]
MENU: '''Tools → Transform Basic → SliceRandom Group'''
KEYBOARD SHORTCUT: '''Shift+SO'''
FUNCTION: Splits one or more selected objects into two parts along Creates random clones of a specified slice plane key object with random locations and random orientations but confined into the volume of a container object
TO SLICE AN OBJECT SELECTIONCREATE A RONDOM GROUP:
# Activate the '''Slice Random Group Tool'''.# Click on the object(s) you want to slice one by one clone (key object) and press the '''Enter Key''' when done. # Next, you have to establish The Rough Surface Dialog opens up on the slice planelower right corner of the screen. Left-click on The '''Container''' dropdown list displays a point in list of all the solid objects. In the project workspace to specify . Select the first anchor of desired container object from the slice planelist. By # The default, number of the slice plane elements is perpendicular 100. Change it to the current work planeany desired number. # As you drag Click the mouse around, a ghost OK button of the slice plane will appear rotating about the anchor point. Left-click a second point in the project workspace dialog to fix close it and complete the slice plane. # The original selected objects are not replaced with sliced objectsgroup creation.
As a result of the slice operation, solids are sliced into smaller generic [[Solid Objects|solid objects]], surfaces are sliced into smaller generic [[Surface Objects|surface objects]] and curves are sliced into smaller generic [[Curve Objects|curve objects]]. Â Â SPECIAL CASES OR EXCEPTIONS: You Only a solid object can define the slice plane alternatively using three snap points of the object to be sliced. Once the Slice Tool is enabled, click on three snap points of the selected object one by one to form the three-point slice planeact as a container for a random group.
PYTHON COMMAND: slicerandom_group(objectlabel,x0key_object,y0container_object,z0,uX,uY,uZelement_count)  <b>Trimming Objects</b>  You have the option to keep only one of the two split parts resulting from a slice operation if you wish so. While dragging the slice plane, if you hold the keyboard's '''Ctrl Key''' down at the time of the left mouse click, the part on the positive side of the slice plane is preserved and the other part is discarded. If you hold the keyboard's '''Alt Key''' down at the time of the left mouse click, the part on the negative side of the slice plane is preserved and the other part is discarded. <table><tr><td> [[Image:slice4_tn_new.png|thumb|300px|Selecting the first point of the slice plane on the edges of a box object.]] </td></tr><tr><td> [[Image:slice5_tn_new.png|thumb|300px|Selecting the second point of the slice plane on the edges of a box object.]] </td></tr><tr><td> [[Image:Slice5_tnB_new.png|thumb|300px|Selecting the third point of the slice plane on the edges of a box object.]] </td></tr><tr><td> [[Image:slice6_tn_new.png|thumb|300px|Deleting the sliced portion.]] </td></tr></table> <table><tr><td> [[Image:slice7_tn_new.png|thumb|300px|Selecting the first point of the slice line on the edges of a circle strip object.]] </td></tr><tr><td> [[Image:Slice7_tnB_New.png|thumb|300px|Selecting the first point of the slice line on the edges of a circle strip object.]] </td></tr><tr><td> [[Image:slice8_tn_new.png|thumb|300px|Deleting the sliced portion.]] </td></tr></table> <table><tr><td> [[Image:slice9_tn_new.png|thumb|300px|Selecting the split point on a curve object.]] </td></tr><tr><td> [[Image:Slice9_tnB_new.png|thumb|300px|Deleting the sliced portion.]] </td></tr></table>
==Revolve Tool==
[[File:cad_manual-56_tn.jpgpng|600px|revolve process]]
In this example, a rectangular plane has been revolved by using a pre-drawn line as the axial reference.
Example 1: Revolving Polygon Planes
This example illustrates revolving the face of a cylinder triangular plane about the axis of a pyramid"s edgepre-drawn line as the axial reference.
[[File:cad_manual-57_tn.jpgpng|600px|revolve sample 1]]
Example 2: Complex Planar Revolutions
This example illustrates an extremely complex face revolved about the axis of a line.
[[File:cad_manual-58_tn.jpgpng|600px|revolve sample 2]]
Example 3: Unusual Revolutions
This example illustrates the face of a cylinder revolved about the axis of a pyramid"s edge.
[[File:cad_manual-59_tn.jpgpng|600px|revolve sample 3]]
Example 4: Partial Revolutions
This example illustrates the results of specifying a partial Rotation Angle.
[[File:cad_manual-60_tn.jpgpng|600px|revolve sample 4]]
==Skin Rotate Tool==
ICON: [[File:skin_tool_tnrotate_tool_tn.png]]
MENU: '''Tools → Transform Basic → SkinRotate'''
KEYBOARD SHORTCUT: '''Shift+KR'''
FUNCTION: Creates a transition (skin) among two Rotates one or more planar surface objectsabout a specified axis of rotation by a specified angle
TO SKIN PLANAR SURFACE OBJECTSROTATE AN OBJECT SELECTION:
# Activate the '''Skin Rotate Tool'''.# Click on the planar surface object(s) you want to skin translate one by one and press the '''Enter Key''' when done. # A new solid object is created Next, you have to establish the rotation axis. Left-click on a point in the project workspaceto specify the pivot of the axis. Note that By default, the original surface objects are not deleted as a result rotation axis is oriented along the Z-axis. # Use the keyboard's '''Up Arrow''' or '''Down Arrow''' keys to change the direction of this the rotation axis or cycle through all the three X, Y, Z directions. # Drag the mouse to establish the rotation angle. If you hold down the '''Shift Key''' while dragging the mouse, the rotation angle will increment in step of 15 degrees.# When you reach the desired rotation angle, left-click to drop the object selection. # A dialog pops up on the lower right corner of the screen where you can fine-tune or modify the rotation angle, the pivot coordinates or the direction of the normal vector along the rotation axis before finalizing the rotate operation.
You can align the rotation axis using the snap points of other objects in the project workspace. By default, if you click at a blank point, you establish a rotation axis normal to the current work plane. Instead, you can click at the edge snap point of another object to set the rotation axis along that edge. Or you can click on the face snap point of another object to set the rotation axis along the normal to that face. Once the rotation axis has been established, a local rotation coordinate system is created, and you can cycle through the three possible axes using the keyboard's '''Up Arrow''' or '''Down Arrow''' keys.
On occasion, the resulting solid object created from the skin operation may be twisted at the center. You can use the '''Left Arrow Key''' or '''Right Arrow Key''' to untwist (or twist) the transition by cycle the surface objectsâ node order clockwise or counter-clockwise. You can also use the '''Up Arrow Key''' or '''Down Arrow Key''' to reverse the selected objectâs node order.
PYTHON COMMAND: rotate(object,rot_angle_degree,rot_axis_x,rot_axis_y,rot_axis_z)
SPECIAL CASES OR EXCEPTIONS<table><tr><td> [[Image: rotate1_tn_new.png|thumb|540px|Rotating an object selection at the same time.]] </td></tr></table>
<b>Rotating Objects Locally Using Snap Points</b>
PYTHON COMMAND: NoneThe simplest and quickest way to rotate an object locally is to hover your mouse over a snap point of an object to highlight it. Then type the keyboard shortcut '''R''' to enable the Rotate Tool. A trident depicting a local coordinate system appears at the selected snap point. You can now rotate the selected object by the desired angle. Bear in mind that each snap point has a default axis of rotation. You can cycle through the three rotational axes using the '''Up Arrow''' or '''Down Arrow''' keys. You can also constrain the angle of rotation to 15° increments by holding down the '''Shift Key'''. Left click to complete the rotation.
<table>
<tr>
<td> [[Image:rotate2_tn_new.png|thumb|540px|Rotating an object selection about an edge of another object.]] </td>
</tr>
</table>
[[File:cad_manual-65_tn.jpg|skinning process]]==Roughen Tool==
NOTE how X and Y LCS coordinates of the above two planes are at right angles to each other. If the LCS orientation of each profile are not properly aligned, twisting of the skinned surface will occur. You can enable on-screen LCS (local coordinates) feedback for each object via the View menuICON: [[File:roughen_tool_tn.png]]
Example 1MENU: Skinning Multiple Profiles'''Tools → Transform → Roughen'''
# Make sure all profiles are de-selected then select the Skin Tool from the CAD toolbar (A and B).# Left click the first profile (C).# Left click the next profile (D).# Continue to left click on each successive profile you want to skin between.# After clicking on the final profile, press ENTER to complete the skinning operation (E).KEYBOARD SHORTCUT: '''Shift+H'''
[[FileFUNCTION:cad_manual-66_tn.jpg|skin profiles 1]]Converts the surface of an object into a random rough surface
[[FileTO ROUGHEN AN OBJECT SELECTION:cad_manual-67_tn.jpg|skin profiles 2]]
==Strip-Sweep # Activate the '''Roughen Tool=='''.# Click on the object(s) you want to roughen one by one and press the '''Enter Key''' when done.# The Rough Surface Dialog opens up on the lower right corner of the screen. Enter values for the RMS height and correlation length of the rough surface. # Click the OK button of the dialog to close it and complete the transformation.
ICON: [[File:strip_tool_tn.png]]
MENUSPECIAL CASES OR EXCEPTIONS: The Roughen Tool doesn'''Tools → Transform → Strip-Sweep'''t work with curve objects.
KEYBOARD SHORTCUTPYTHON COMMAND: '''Shift+T'''roughen(label,object,rms_height,corel_Length)
FUNCTION: Creates a flat surface object of a specified width from a curve object ==Scale Tool==
TO STRIP-SWEEP CURVE OBJECT(S)ICON:[[File:scale_tool_tn.png]]
# Activate the MENU: '''Strip-Sweep ToolTools → Basic → Scale'''.# Click on the curve object you want to strip-sweep. # A dialog pops up on the lower right corner of the screen where you can modify the strip width.
KEYBOARD SHORTCUT: '''S'''
SPECIAL CASES OR EXCEPTIONSFUNCTION: You cannot strip-sweep a polyline object because of its sharp corners. However, you can first turn Scales the polyline into a smoother curve object using the Fillet Tool size (and then strip-sweep it. generally coordinates) of one or more objects by specified scaling vectors
TO SCALE AN OBJECT SELECTION:
# Activate the '''Scale Tool'''.# Click on the object(s) you want to scale one by one and press the '''Enter Key''' when done.# Next, you have to establish the baseline scale vector. Left-click on a point in the project workspace to specify the start of the baseline scale vector. Then, drag the mouse to draw the vector and left-click to finish the baseline scale vector. # Now you have to specify the final scale vector. The final scale vector has the same start point as the baseline scale vector but a different end point which determines the scale factor. As you drag the mouse, you will see the second vector drawn on top of or next to the baseline vector. Left-click one more time when you get the desired transformation. # The scale operation performs a mapping transformation on the object selection from the baseline scale vector onto the final scale vector. As you drag the mouse to establish the end point of the final scale vector, the object selection changes both size and location as a result of the scale transformation.# A dialog pops up on the lower right corner of the screen where you can fine-tune or modify the scale factors along the three principal axes as well the coordinates of the scale origin.  By default, objects are scaled uniformly, i.e. the scaling factors along the three principal axes are equal. From the Scale Dialog, you can change the three scaling factors arbitrarily to achieve any desired shape. Non-uniform scaling of certain objects like cylinder, cone, sphere, torus, etc., does not take effect because it would destroy the object's symmetry. On the other hand, you can enforce non-uniform scaling of objects like box, ellipsoid, ellipse strip or super-quadratic curve.   PYTHON COMMAND: strip_sweepscale(object,widthscale_factor)
<table>
<tr>
<td> [[Image:strip-tool_tn_newscale1_tn_new.png|thumb|600px540px|Using strip-sweep tool to turn Scaling a spiral curve into a surface box objectin all three directions.]] </td>
</tr>
</table>
==Pipe-Sweep Tool==<b>Scaling Objects Locally Using Snap Points</b>
ICON: [[File:pipe_tool_tnSnap points provide an easier way of scaling objects without changing their location. Hover your mouse over a snap point of an object to highlight it and type the keyboard shortcut '''S'''. This establishes the scale origin at the selected snap point. Then, select the end point of the baseline scale vector, which can be another snap point of the same object. It is convenient to select a vertex of an object as the scale origin and select an adjacent vertex as the end point of the baseline scale vector. Next, you need to determine the final scale vector. If you drag the mouse out of the object, you will expand it. If you drag the mouse inside the object and towards the scale origin, you will shrink it.png]]
MENU<table><tr><td> [[Image: '''Tools → Transform → Pipe-Sweep'''scale2_tn_new.png|thumb|540px|Scaling a box object in all three directions.]] </td></tr></table>
KEYBOARD SHORTCUT: '''Shift+I'''<b>Constrained Scaling</b>
FUNCTION: Creates a tubular While dragging the mouse to scale an object of a specified radius from one or more curve objects  TO PIPE-SWEEP CURVE OBJECT(S): # Activate select, if you hold the '''Pipe-Sweep ToolShift Key'''.# Click on the curve object down, you want can constrain the scaling to pipe-sweep. # A dialog pops up on the lower right corner of direction along the screen where baseline scale vector only. Alternatively, if you hold the '''Alt Key''' down, you can modify constrain the pipe radius and cap scaling to the resulting surface object direction normal to turn it into a solid objectthe baseline scale vector only.   SPECIAL CASES OR EXCEPTIONS: You cannot pipe-sweep a polyline object because If the baseline vector is parallel to one of its sharp corners. Howeverthe principal axes, you can first turn the polyline into a smoother curve object using "Shift Contstraint" varies only one scaling factor, while the Fillet Tool and then pipe-sweep it"Alt Constraint" varies two scaling factor simultaneously.   PYTHON COMMAND: pipe_sweep(object,radius)
<table>
<tr>
<td> [[Image:pipe-tool_tn_newscale3_tn_new.png|thumb|600px720px|Using pipe-sweep tool to turn Constrained scaling of a spiral curve into box along an edge.]] </td></tr><tr><td> [[Image:scale4_tn_new.png|thumb|720px|Constrained scaling of a solid objectbox normal to an edge.]] </td>
</tr>
</table>
==Rail-Sweep Skin Tool==
ICON: [[File:sweeo_tool_tnskin_tool_tn.png]]
MENU: '''Tools → Transform → Rail-SweepSkin'''
KEYBOARD SHORTCUT: '''Shift+RK'''
FUNCTION: Sweeps Creates a curve transition (skin) among two or more planar surface object along a specified path represented by another curve object objects
TO RAIL-SWEEP CURVE OBJECT(S)SKIN PLANAR SURFACE OBJECTS:
# Activate the '''Rail-Sweep Skin Tool'''.# Click on the curve object you want to rail to select it. This establishes the sweep path.# Next, click on a planar surface or curve object (s) you want to sweep along skin one by one and press the previously specified rail path'''Enter Key''' when done. # A ghost of a new three-dimensional solid object appears is created in the project workspace. You can use '''Up Arrow''' or '''Down Arrow''' keys to rotate Note that the cross section original surface objects are not deleted as a result of the new object. # Make sure to click the '''Enter Key''' to finalize the constructionthis operation.
The LCS of On occasion, the surface or curve resulting solid object you want to sweep must positioned at created from the origin of coordinates on the default XY work plane. This profile will then skin operation may be projected and swept along the rail path perpendicular to its curve. If the LCS of the surface or curve profile resides twisted at a location other than the origin, you center. You can use the '''Left ArrowKey''' and or '''Right ArrowKey''' keys to slide the swept profile closer untwist (or further away from twist) the origintransition by cycle the surface objectsâ node order clockwise or counter-clockwise. Sliding You can also use the profile changes the projection angle relative '''Up Arrow Key''' or '''Down Arrow Key''' to reverse the parent curve, which might change the shape of the resulting swept objectselected objectâs node order.
SPECIAL CASES OR EXCEPTIONS: You cannot rail a polyline object because of its sharp corners. However, you can first turn the polyline into a smoother curve object using the Fillet Tool and then rail it.
PYTHON COMMAND: rail_sweep(object_1,object_2)None
<table>
<tr>
<td> [[Image:sweep-tool_tn_new.png|thumb|720px|Railing a rectangle strip object along a spiral curve.]] </td>
</tr>
</table>
==Merge Tool==[[File:cad_manual-65_tn.png|720px|skinning process]]
ICON: [[File:merge_tool_tnNOTE how X and Y LCS coordinates of the above two planes are at right angles to each other. If the LCS orientation of each profile are not properly aligned, twisting of the skinned surface will occur. You can enable on-screen LCS (local coordinates) feedback for each object via the View menu.png]]
MENUExample 1: '''Tools → Basic → Merge'''Skinning Multiple Profiles
KEYBOARD SHORTCUT: '''Shift+M'''# Make sure all profiles are de-selected then select the Skin Tool from the CAD toolbar (A and B).# Left click the first profile (C).# Left click the next profile (D).# Continue to left click on each successive profile you want to skin between.# After clicking on the final profile, press ENTER to complete the skinning operation (E).
FUNCTION[[File: Combines nodal curves (polylines or NURBS curves) into a new curve or combines polymesh objects aligned along cell edges into a new polymesh object cad_manual-66_tn.png|720px|skin profiles 1]]
TO MERGE AN OBJECT SELECTION[[File:cad_manual-67_tn.png|720px|skin profiles 2]]
# Activate the '''Merge ==Slice Tool'''.# Click on the objects of the same type you want to merge one by one and press the '''Enter Key''' when done.# The original object selection is replaced with a larger object of the same type. ==
ICON: [[File:slice_tool_tn.png]]
If there is a gap between the objects to be merged, it is eliminated as a result of merging as the last and first nodes of the two separate curves become part of a single node list.MENU: '''Tools → Transform → Slice'''
KEYBOARD SHORTCUT: '''Shift+S'''
SPECIAL CASES OR EXCEPTIONSFUNCTION: In order to merge Splits one or more polymesh selected objects, they have to have one or more cells strictly and exactly lined up into two parts along common edges. a specified slice plane
TO SLICE AN OBJECT SELECTION:
PYTHON COMMAND: merge_curve# Activate the '''Slice Tool'''.# Click on the object(object_1,object_2s)you want to slice one by one and press the '''Enter Key''' when done. # Next, you have to establish the slice plane. Left-click on a point in the project workspace to specify the first anchor of the slice plane. By default, the slice plane is perpendicular to the current work plane. # As you drag the mouse around, a ghost of the slice plane will appear rotating about the anchor point. Left-click a second point in the project workspace to fix the slice plane. # The original selected objects are not replaced with sliced objects.
[[File:merge1_tnAs a result of the slice operation, solids are sliced into smaller generic solid objects, surfaces are sliced into smaller generic surface objects and curves are sliced into smaller generic curve objects.png|Filling Outlines]]
Two NURBS curve to be merged into one.
[[FileSPECIAL CASES OR EXCEPTIONS:merge2_tnYou can define the slice plane alternatively using three snap points of the object to be sliced.png|Filling Outlines]]Once the Slice Tool is enabled, click on three snap points of the selected object one by one to form the three-point slice plane.
The resulting merged NURBS curve with the combine nodes.PYTHON COMMAND: slice(object,x0,y0,z0,uX,uY,uZ)
==Polygonize Tool==
ICON: [[File:polygonize_tool_tn.png]] <b>Trimming Objects</b>
MENU: You have the option to keep only one of the two split parts resulting from a slice operation if you wish so. While dragging the slice plane, if you hold the keyboard's ''Tools → Transform → Polygonize'Ctrl Key''' down at the time of the left mouse click, the part on the positive side of the slice plane is preserved and the other part is discarded. If you hold the keyboard's '''Alt Key''' down at the time of the left mouse click, the part on the negative side of the slice plane is preserved and the other part is discarded.
KEYBOARD SHORTCUT: '''Shift+P'''Trimming a Cube
FUNCTION<table><tr><td> [[Image: Discretizes slice4_tn_new.png|thumb|300px|Selecting the boundary first point of the slice plane on the edges of a curve box object or .]] </td><td></td><td> [[Image:slice5_tn_new.png|thumb|300px|Selecting the second point of the slice plane on the edges of a curved planar surface box object into linear segments. ]] </td></tr><tr><td> [[Image:Slice5_tnB_new.png|thumb|300px|Selecting the third point of the slice plane on the edges of a box object.]] </td><td></td><td> [[Image:slice6_tn_new.png|thumb|300px|Seleting the sliced portion.]] </td></tr><tr><td> [[Image:Slice6_tn_new_end.png|thumb|300px|Deleting the sliced portion.]] </td><td></td><td></td></tr></table>
TO POLYGONIZE OBJECT(S):Trimming a Circle Strip
# Activate the '''Polygonize Tool'''.<table># Click on the object(s) you want to polygonize one by one and press the '''Enter Key''' when done. <tr># The discretized versions <td> [[Image:slice7_tn_new.png|thumb|300px|Selecting the first point of the selected objects appears in slice line on the project workspaceedges of a circle strip object.]] </td># A dialog pops up on <td></td><td> [[Image:Slice7_tnB_New.png|thumb|300px|Selecting the lower right corner second point of the screen where you can modify slice line on the side length edges of a circle strip object.]] </td></tr><tr><td> [[Image:slice8_tn_new.png|thumb|300px|Selecting the resulting polygonal objectssliced portion.]] </td># Make sure to click <td></td><td> [[Image:Slice8_tn_new_end.png|thumb|300px|Deleting the OK button of the dialog to finalize the operationsliced portion. ]] </td></tr></table>
 The Polygonize Tool converts Trimming a surface object into a polystrip and converts a curve object into a polyline.  SPECIAL CASES OR EXCEPTIONS: You cannot polygonize [[Solid Objects|solid objects]].   PYTHON COMMAND: polygonize(object,side_length)Spiral Object
<table>
<tr>
<td> [[Image:polygonize1_tn_newslice9_tn_new.png|thumb|500px300px|A circle strip to be polygonizedSelecting the first point of the slice plane.]] </td><td></td><td> [[Image:Slice9_tnB_new.png|thumb|300px|Selecting the second point of the slice plane.]] </td>
</tr>
<tr>
<td> [[Image:polygonize3_tn_newSlice9_tnB_new_highlight.png|thumb|500px300px|The polygonized version of Selecting the circle strip with a side length of 30 unitssliced portion.]] </td><td></td><td> [[Image:Slice9_tnB_new_end.png|thumb|300px|Deleting the sliced portion.]] </td>
</tr>
</table>
==Polymesh Spline Tool==
ICON: [[File:polymesh_tool_tnspline_tool_tn.png]]
MENU: '''Tools → Transform → PolymeshSpline Fit'''
KEYBOARD SHORTCUT: '''PShift+N'''
FUNCTION: Discretizes Creates smooth cubic-spline interpolated versions of one or more surface discretized (polystrip, polyline or solid polymesh) objects into a set of triangular cells
TO POLYMESH SPLINE-FIT AN OBJECT SELECTION:
# Activate the '''Polymesh Spline Fit Tool'''.# Click on the object(s) you want to polymesh consolidate one by one and press the '''Enter Key''' when done. # Discretized Generic surface of solid versions of the selected polymesh objects appear in the project workspace. # A dialog pops up on the lower right corner of the screen which, allows you to change the edge length of the triangular cells. # Make sure to click the OK button of Polymesh Dialog to finalize the operation.
Naturally, The Spline Fit Tool converts a solid object is turned into polyline to a closed polymesh (or NURBS curve with the same nodes and converts a polystrip to a NURBS strip with the same nodes. In the case of a solid polymesh)object, while the Spline Fit Tool creates a smooth generic surface object is converted to an open polymesh (or a surface polymesh)version. Each polymesh object is made up of a number The latter case doesn't always yield satisfactory results due to the complexity of nodesspline fit operation for arbitrary nodal surfaces. In some cases, edges and facesthe Gibbs effect may produce undesirable overshoot spikes at the boundary of the surface object.
SPECIAL CASES OR EXCEPTIONS: You cannot use the Polymesh The Spline Fit Tool doesn't work with curve close of solid polymesh objects.
PYTHON COMMAND: polymeshspline_fit(label,object,edge_length)
<table><tr><td> [[ImageFile:polymesh1_newspline1_tn.png|thumb|left|600px|Converting a pyramid to a polymesh object]] [[File:spline2_tn.png]] </td></tr></table>
<b>Modifying a Polymesh Object</b>A surface polymesh object (left) and its spline-fitted version (right).
After you convert an object to a polymesh, you can edit its properties through the polymesh's property dialog. You can change the mesh type from '''Regular''' to '''Structured''' and vice versa from the dropdown list labeled '''Mesh Type'''. You can also change the '''Edge Length''' to increase or decrease the mesh resolution. All the nodes, faces and edges of a polymesh can be accessed for further editing.==Strip-Sweep Tool==
Each polymesh object is made up of a number of nodes, edges and faces. You can access the individual nodes, edges or faces. The '''Mode''' section of the property dialog has three radio buttons labeled '''Node''', '''Face''' and '''Edge'''. When the Node Mode is selected, a small red ball at the location of the selected node. You can cycle through all the nodes from the '''Active Node''' box or using the keyboard's '''Up Arrow''' or '''Down Arrow''' keys. The world coordinates of the active node are displayed in the property dialog. You can change these values and fine tune the position of any node. You can also delete the selected node by clicking the '''Delete''' button next to the node indexICON: [[File:strip_tool_tn.png]]
When the Face Mode is selected, the perimeter of the active face is highlighted as a red triangle. You can cycle through all the faces from the MENU: '''Active FaceTools → Transform → Strip-Sweep''' box or using its spin buttons. The world coordinates of the centroid of the active face are displayed in the property dialog, but they are greyed out and cannot be edited. However, you can insert a new node at the location of the centroid of the active face and split it into three new smaller faces. To do so, click the '''Insert''' button of the dialog. At this time, a temporary local coordinate system is established at the centroid of the selected face with the local X-axis parallel to the first edge of the selected face and the local Z-axis normal to the plane of the selected face. The three active node coordinate boxes in this case represent the offset coordinates of the new node. You have an opportunity to type in new offset values to modify the location of the new node.
When the Edge Mode is selected, the active edge is highlighted as a red line segment. You can cycle through all the edges from the KEYBOARD SHORTCUT: '''Active EdgeShift+T''' box or using its spin buttons. The world coordinates of the midpoint of the active edge are displayed in the property dialog, but they are greyed out and cannot be edited. However, you can insert a new node at the location of the midpoint of the active edge and split it into two new smaller edges. To do so, click the '''Insert''' button of the dialog. As a result of this operation, the two triangular faces sharing the selected edge are split into four new smaller faces. At this time, a temporary local coordinate system is established at the midpoint of the selected edge with the local X-axis parallel to the selected edge and the local Z-axis normal is aligned along the average of the normal vectors of the two triangular faces sharing that edge. The three active node coordinate boxes in this case represent the offset coordinates of the new node. You have an opportunity to type in new offset values to modify the location of the new node.
{{Note|Inserting new nodes on faces allows you to increase the mesh resolution locally at certain selected cells. Inserting new nodes on edges allows you to expand FUNCTION: Creates a polymesh flat surface object outward of a specified width from its boundaries.}}a curve object
<table><tr><td> [[ImageTO STRIP-SWEEP CURVE OBJECT(S):polymesh2_tn.png|thumb|left|360px|Selecting a node of a polymesh object.]] </td><td> [[Image:polymesh3_tn.png|thumb|left|360px|Editing the coordinates of a node of a polymesh object.]] </td></tr><tr><td> [[Image:polymesh4_tn.png|thumb|left|360px|Selecting a face of a polymesh object.]] </td><td> [[Image:polymesh5_tn.png|thumb|left|360px|Inserting a new node at a face's centroid.]] </td></tr><tr><td> [[Image:polymesh6_tn.png|thumb|left|360px|Selecting an edge of a polymesh object.]] </td><td> [[Image:polymesh7_tn.png|thumb|left|360px|Inserting a new node at an edge's midpoint.]] </td></tr></table>
==Consolidate # Activate the '''Strip-Sweep Tool=='''.# Click on the curve object you want to strip-sweep. # A dialog pops up on the lower right corner of the screen where you can modify the strip width.
ICON: [[File:consolidate_tool_tn.png]]
MENUSPECIAL CASES OR EXCEPTIONS: '''Tools → Transform → Consolidate'''You cannot strip-sweep a polyline object because of its sharp corners. However, you can first turn the polyline into a smoother curve object using the Fillet Tool and then strip-sweep it.
KEYBOARD SHORTCUT: '''Shift+C'''
FUNCTIONPYTHON COMMAND: Converts open polymesh objects to generic [[Surface Objects|surface objects]] and converts closed polymesh objects to generic [[Solid Objects|solid objects]] strip_sweep(object,width)
TO CONSOLIDATE AN OBJECT SELECTION<table><tr><td> [[Image:strip-tool_tn_new.png|thumb|720px|Using strip-sweep tool to turn a spiral curve into a surface object.]] </td></tr></table>
# Activate the '''Consolidate ==Subtract Tool'''.# Click on the polymesh object(s) you want to consolidate one by one and press the '''Enter Key''' when done. # Generic surface of solid versions of the selected polymesh objects appear in the project workspace. ==
ICON: [[File:subtract_tool_tn.png]]
SPECIAL CASES OR EXCEPTIONSMENU: You can also use the Consolidate Tool to convert Boolean objects to generic surface or [[Solid Objects|solid objects]]. In that case, you will lose access to the properties of the individual constituents of the original Boolean object. '''Tools → Basic → Subtract'''
PYTHON COMMANDKEYBOARD SHORTCUT: consolidate(object)'''D'''
==Spline Tool==FUNCTION: Subtracts one or more objects from another object in the Boolean sense
ICONTO SUBTRACT FROM AN OBJECT: [[File:spline_tool_tn.png]]
MENU: # Activate the '''Tools → Transform → Spline FitSubtract Tool'''.# Click on the object you want to subtract from and press the '''Enter Key'''.# Click on the object(s) you want to subtract from the previously selected object one by one and press the '''Enter Key''' when done.# All the original selected objects are replaced with a new Boolean object with a new default name.
KEYBOARD SHORTCUT: '''Shift+N'''
FUNCTIONPYTHON COMMAND: Creates smooth cubic-spline interpolated versions of one or more discretized subtract(polystriplabel, polyline or polymeshobject_1,object_2) objects
TO SPLINE-FIT AN OBJECT SELECTION<table><tr><td> [[Image:Cad_manual-49_tn_new.png|thumb|540px|(Left) Two overlapping boxes and (Right) the result of their Boolean subtraction after subtracting the gray box from the blue one.]] </td></tr></table>
# Activate the '''Spline Fit ==Translate Tool'''.# Click on the object(s) you want to consolidate one by one and press the '''Enter Key''' when done. # Generic surface of solid versions of the selected polymesh objects appear in the project workspace. ==
ICON: [[File:move_tool_tn.png]]
The Spline Fit Tool converts a polyline to a NURBS curve with the same nodes and converts a polystrip to a NURBS strip with the same nodes. In the case of a polymesh object, the Spline Fit Tool creates a smooth generic surface object version. The latter case doesnMENU: '''Tools → Basic → Translate'''t always yield satisfactory results due to the complexity of spline fit operation for arbitrary nodal surfaces. In some cases, the Gibbs effect may produce undesirable overshoot spikes at the boundary of the surface object.
KEYBOARD SHORTCUT: '''T'''
SPECIAL CASES OR EXCEPTIONSFUNCTION: The Spline Fit Tool doesn't work with close of solid polymesh Moves one or more objects. to a different location by a specified translation vector
PYTHON COMMANDTO TRANSLATE AN OBJECT SELECTION: spline_fit(object)
# Activate the '''Translate Tool'''.
# Click on the object(s) you want to translate one by one and press the '''Enter Key''' when done.
# Next, you have to establish the translation vector. Left-click on a point in the project workspace to specify the start of the vector.
# Drag the mouse to draw a ghost of the translation vector in the desired direction. Left-click a second point to specify the end of the vector.
# The object selection is translated by the specified vector.
# A dialog pops up on the lower right corner of the screen where you can fine-tune or modify the translation vector before finalizing the translate operation.
# Using the Translate Dialog, you can also simply type in the final destination coordinates for the object selection.
[[File:spline1_tn.png]] [[File:spline2_tn.png]]
A surface polymesh object PYTHON COMMAND(leftS) and its spline-fitted version (right).:
==Roughen Tool==translate_by(object,dx,dy,dz)
ICON: [[File:roughen_tool_tn.png]] translate_to(object,x0,y0,z0)
MENU<table><tr><td> [[Image: '''Tools → Transform → Roughen'''translate1_tn_new.png|thumb|540px|Translating an object seletion at the same time.]] </td></tr></table>
KEYBOARD SHORTCUT: '''Shift+H'''<b>Moving Objects Around Using Snap Points</b>
FUNCTION: Converts the surface of The simplest and quickest way to move an object into is to hover your mouse over a random rough surface snap point of the object to highlight it. Then type the keyboard shortcut '''T'''. The cursor latches to the selected snap point and the Translate Dialog pops up at the lower right corner of the screen. Without clicking the mouse, begin to drag the object in the project workspace. A ghost of the object starts to move around. Click the left mouse button at the desired location to drop the object. You can fine-tune the final destination using the Translate Dialog.
TO ROUGHEN AN OBJECT SELECTION:<b>Constrained Translation</b>
# Activate When you use a snap point to translate an object, you can use the keyboard's ''Roughen Tool'Alt'''.# Click on the object(s) you want to roughen one by one and press the '''Enter KeyShift''' when donekeys to constrain the object move in certain directions.# The Rough Surface Dialog opens up type of constraint depends on the lower right corner of the screen. Enter values for the RMS height and correlation length of the rough surface. # Click the OK button of the dialog which snap point you pick to close it and complete translate the transformationobject.The following rules apply:
* With a face snap point selected, you can constrain translate to the direction normal to that face only by holding the '''Alt Key''' down during dragging. You can also constrain translate to the plane of that face only by holding the '''Shift Key''' down during dragging.
* With an edge snap point selected, you can constrain translate to the line along that edge only by holding the '''Shift Key''' down during dragging. You can also constrain translate to the line normal to that edge only by holding the '''Alt Key''' down during dragging.
* With a vertex snap point selected, you can constrain translate to the lines along the two edges passing through that vertex only by holding the '''shift Key''' or '''Alt Key''' down during dragging.
SPECIAL CASES OR EXCEPTIONS<table><tr><td> [[Image: The Roughen Tool doesn't work with consttranslate1_tn_new.png|thumb|400px|Translating a box from a face snap point while holding the Alt Key down.]] </td></tr><tr><td> [[Curve ObjectsImage:consttranslate2_tn_new.png|curve objectsthumb|400px|Translating a box from an edge snap point while holding the shift Key down.]]</td></tr><tr><td> [[Image:consttranslate3_tn_new. png|thumb|400px|Translating a box from a vertex snap point while holding the shift Key down.]] </td></tr> </table>
PYTHON COMMAND: roughen(label,object,rms_height,corel_Length)==Union Tool==
==Random Group Tool==ICON: [[File:union_tool_tn.png]]
ICONMENU: [[File:random_group_tool_tn.png]] '''Tools → Basic → Union'''
MENUKEYBOARD SHORTCUT: '''Tools → Basic → Random GroupU'''
KEYBOARD SHORTCUTFUNCTION: '''Shift+O'''Forms a union of an object selection in the Boolean sense
FUNCTIONTO UNION AN OBJECT SELECTION: Creates random clones of a specified key object with random locations and random orientations but confined into the volume of a container object
TO CREATE A RONDOM GROUP:# Activate the '''Union Tool'''.# Click on the objects you want to union one by one and press the '''Enter Key''' when done.# The original object selection is replaced with a new Boolean object with a new default name.
# Activate the '''Random Group Tool'''.
# Click on the object you want to clone (key object) and press the '''Enter Key''' when done.
# The Rough Surface Dialog opens up on the lower right corner of the screen. The '''Container''' dropdown list displays a list of all the [[Solid Objects|solid objects]] In the project workspace. Select the desired container object from the list.
# The default number of the elements is 100. Change it to any desired number.
# Click the OK button of the dialog to close it and complete the group creation.
PYTHON COMMAND: union(label,object_1,object_2)
SPECIAL CASES OR EXCEPTIONS: Only a solid object can act as a container for a random group. <table> <tr>Â PYTHON COMMAND<td> [[Image: random_groupcad_manual-50_tn_new.png|thumb|600px|(label,key_object,container_object,element_countLeft)Two overlapping boxes and (Right) the result of their Boolean union.]] </td></tr></table>
<br />
<hr>
[[Image:Top_icon.png|48px30px]] '''[[#Operational Modes of CubeCAD Tools| Back to the Top of the Page]]'''
[[Image:Back_icon.png|40px30px]] '''[[Building_Geometrical_Constructions_in_CubeCAD | Back to CubeCAD Page]]'''
[[Image:Back_icon.png|40px30px]] '''[[EM.Cube | Back to EM.Cube Main Page]]'''