Exit Full View

FooCAD / src / dist / extensions / uk.co.nickthecoder.foocad / smartextrusion / v1 / help.txt

Instead of : #Shape2d.extrude(height)# we use #Shape2d.smartExtrude(height)#.
But then we can alter the extrusion by appying different edges, such as chamfers, fillets
and more exotic varieties.

For example, this will apply a chamfer to all edges :

    #myShape2d.smartExtrude(height).chamfer( 2 )#

Which is equivalent to this more flexible alternative :

    #myShape2d.smartExtrude(height).edges( Chamfer(2) )#

Because instead of [Chamfer](...), we can use any [SmartEdge], such as
    [Fillet], [Cove] (an inverted fillet), [ProfileEdge]

[ProfileEdge] is very flexible, because the shape of the edge is governed by any _Path2d_.

There are four edges; two for the top and two for the bottom faces of the extrusion.
There are too for each, because the edges of _holes_ can be treated differently from the outside edges.

As we have already seen, we can apply a single [SmartEdge] to all four edges using :

    #.edges( SmartEdge )#

Or we can alter two edges at a time using :

    #.top()  .bottom()  .inside()  .outside()#

Finally, we can alter a single edge using :

    #.insideTop()  .insideBottom()  .outsideTop()  .outsideBottom()#

All of these methods take a [SmartEdge] and return a new [SmartExtrusion].