How to add your knowledge

PointMixin

    Table of contents
    1. 1. Synopsis
    2. 2. Mixins
    3. 3. Canonicals
    4. 4. Example 1
    5. 5. Example 2
    6. 6. Example 3

    Synopsis

    This design contains information needed to constrain a zero dimensional object, namely the origin of the part. It is used as a mixin to parts that only have a location parameter to describe their geometry.

    Mixins

    Canonicals

    Name Type Description
    origin point Point location of this part.

    Example 1

    Name: pointMixin_Ex01
    Design: pointMixin
    NameTypeFormula
    q01 string ""
    q11 string ""
    q00 string ""
    q10 string ""
    Child Name: TLA
    Child Design: :pointMixin
    NameTypeSupplied
    origin any point(0,0,0)
    q01 any "YOF"
    q11 any "3F"
    q00 any "-"
    q10 any "7"
    color any "blue"
    Child Name: hBar
    Child Design: :Line
    NameTypeSupplied
    thruPoint1 point origin - unitY*0.25
    thruPoint2 point origin + unitY*0.25
    lineWidth string "Heavy"
    Child Name: vBar
    Child Design: :Line
    NameTypeSupplied
    thruPoint1 point origin - unitX*0.25
    thruPoint2 point origin + unitX*0.25
    lineWidth string "Heavy"
    Child Name: txt01
    Child Design: :Text
    NameTypeSupplied
    Text string q01
    v10 point origin - unitX*0.05 + unitY*0.05
    charHeight number 0.2
    Child Name: txt11
    Child Design: :Text
    NameTypeSupplied
    Text string q11
    v00 point origin + unitX*0.05 + unitY*0.05
    charHeight number 0.2
    Child Name: txt00
    Child Design: :Text
    NameTypeSupplied
    Text string q00
    v11 point origin + unitX*0.05 + unitY*0.05
    charHeight number 0.2
    Child Name: txt10
    Child Design: :Text
    NameTypeSupplied
    Text string q10
    v01 point origin + unitX*0.05 - unitY*0.05
    charHeight number 0.2

    Example 2

    Name: pointMixin_Ex02
    Design: Rectangle
    NameTypeFormula
    height number 1
    width number 3
    Child Name: flange
    Child Design: :rectangle
    NameTypeSupplied
    height number 0.1
    width number width
    eBottom point eBottom
    lineWidth string "Heavy"
    color string "olive green"
    Child Name: fLeft
    Child Design: :pointMixin_Ex01
    NameTypeSupplied
    origin point midPoint(eLeft, center)
    q01 any "YOF"
    q11 any "3F"
    q00 any "-"
    q10 any "7"
    color any "blue"
    Child Name: fRight
    Child Design: :pointMixin_Ex01
    NameTypeSupplied
    origin point midPoint(eRight, center)
    q01 any "YOF"
    q11 any "3F"
    q00 any "-"
    q10 any "7"
    color any "blue"

    Example 3

    Name: pointMixin_Ex03
    Design: Rectangle
    NameTypeFormula
    fDia number 1/4
    fPtList list

    Dim Qty As Integer

    Dim eop As Number

    Dim wid As Number

    Dim pit As Number

    Dim i As Integer

    Dim result As List

    eop = 2 * fDia + 0.06

    wid = width - (2 * eop)

    Qty = ceiling(wid / (4 * fDia))

    pit = wid / Qty

    result = {}

    For i = 0 To Qty

    Dim len As Number

    Dim o As Point

    len = eop + pit * i

    o = v01 - (unitY * eop)

    o = o + unitX * (pit * i + eop)

    result = result + {o}

    Next i

    Return result

    Child Name: TLA
    Child Design: pointMixin_Ex03
    NameTypeSupplied
    height any 1
    width any 3
    Child Name: flange
    Child Design: :rectangle
    NameTypeSupplied
    height number 0.1
    width number width
    eBottom point eBottom
    lineWidth string "Heavy"
    color string "olive green"
    Child Name: base
    Child Design: :rectangle
    NameTypeSupplied
    height number height
    width number width
    eBottom point eBottom
    lineWidth string "Heavy"
    color string "olive green"
    Child Name: fLeft
    Child Design: :pointMixin_Ex01
    NameTypeSupplied
    origin point midPoint(eLeft, center)
    q01 any "YOF"
    q11 any "3F"
    q00 any "-"
    q10 any "7"
    color any "blue"
    Child Name: fPt
    Child Design: :pointMixin_Ex01
    NameTypeSupplied
    Quantity integer length(fPtList)
    origin point nth(child.index, fPtList)
    q10 string (If (Child.index = 1 Or (Child.index = length(fPtList))) Then " YOF " Else _ "")
    q11 string (If (Child.index = 1 Or (Child.index = length(fPtList))) Then format(" %d ", _
    color string "red"
    Child Name: fPt
    Child Design: :pointMixin_Ex01
    Child List?
    NameTypeSupplied
    Quantity integer length(fPtList)
    origin point nth(child.index, fPtList)
    q10 string (If (Child.index = 1 Or (Child.index = length(fPtList))) Then " YOF " Else _ "")
    q11 string

    (If (Child.index = 1 Or (Child.index = length(fPtList))) Then format(" %d ", _

    floor(fDia * 16)) Else "")

    color string "red"