Synopsis
This design defines a basic three dimensional cone. Cone is a solid and inherits rules from the design SolidMixin which includes typical mass properties associated with solid entities. The minimum requirements for creating an instance of a cone are height and radius.
Canonicals
Name
|
Type
|
Description
|
height
|
number
|
Height of the Cone along the Z axis from the basePoint to the topPoint |
radius
|
number
|
Radius of the Cone in the XY plane measured at the basePoint |
Parameters
Name
|
Type
|
Description
|
topRadius |
number
|
A topRadius of zero will produce a Cone with a pointed top. Values greater than zero will flatten the top of the Cone and the height of the Cone will measure to the flattened top. |
Rules
Name
|
Type
|
Description
|
basePoint |
point
|
Point at the center of the bottom face of the Cone. |
topPoint |
point
|
Point at the top of the cone. If the topRadius is greater than zero, then the topPoint is at the center of the top face. |
Example 1
Name
: |
cone_Ex01
|
Design
: |
acDrawingDocument
|
Child Name
: |
cone_1
|
Child Design
: |
:Cone
|
Name
|
Type
|
Supplied
|
height
|
number
|
3.5 |
radius
|
number
|
2 |
color
|
string
|
"jungle green"
|
Example 2
Name
: |
cone_Ex02
|
Design
: |
acDrawingDocument
|
Child Name
: |
cone_1
|
Child Design
: |
:Cone
|
Name
|
Type
|
Supplied
|
2 |
number
|
2 |
radius
|
number
|
2 |
topRadius |
number
|
1 |
referenceFrame |
frame
|
frameXY(origin, unitZ, unitY)
|
color
|
string
|
"plum"
|
Example 3
Name
: |
cone_Ex03
|
Design
: |
acDrawingDocument
|
Name
|
Type
|
Formula
|
startOd |
number
|
3 |
endOd |
number
|
2 |
thk |
number
|
0.25 |
length
|
number
|
1 |
%angle
|
number
|
atan((startOd - endOd) / 2 / length)
|
%thk
|
number
|
thk / cos(%angle)
|
Child Name
: |
reducer
|
Child Design
: |
:BooleanSolid
|
Name
|
Type
|
Supplied
|
operation
|
name
|
:difference
|
components
|
list
|
{od, id} |
color
|
string
|
"blue"
|
Child Name
: |
od
|
Child Design:
|
:Cone
|
Name
|
Type
|
Supplied
|
height
|
number
|
length |
radius
|
number
|
startOd / 2
|
topRadius
|
number
|
endOd / 2
|
referenceFrame |
frame
|
frameXY(origin, -unitZ, unitY)
|
Child Name
: |
od
|
Child Design
: |
:Cone
|
Name
|
Type
|
Supplied
|
height
|
number
|
length
|
radius
|
number
|
od.radius - %thk
|
topRadius |
number
|
od.topRadius - %thk
|
referenceFrame |
frame
|
od.referenceFrame |