Solid Edge Part Type Library
AddFiniteExtrudedProtrusion Method
Specifies the number of profiles that are to be used to create the extruded protrusion.
Specifies the profiles that are to be used to create the extruded protrusion.
Specifies if the protrusion is be extruded to the positive side, the negative side, or both sides of the profile.
Specifies the distance that the extruded protrusion extends from the profile. If the ProfilePlaneSide is symmetric, the extruded protrusion extends half the extrusion distance in the positive direction and half the extrusion distance in the negative direction from the profile. If the value for this argument is set to 0, you can also use KeyPointOrTangentFace or FromSurfOrRefPlane and ToSurfOrRefPlane optional arguments to specify the extent.
When the ExtrusionDistance argument is set to 0, this argument can be used to specify the extent using the keypoint or tangent face. If a tangent face is used, you need to use the KeyPointFlags argument to specify the distance.
Optional if the KeyPoint argument is used to define the extent, but required if the TangentFace argument is used to specify the extent. Specify the KeyPointFlags using the KeyPointExtentConstants value.
When the ExtrusionDistance argument is set to 0, this argument can be used to specify the From-surface or reference plane to define the starting position of the extent. Use this argument with the ToSurfOrRefPlane argument.
When ExtrusionDistance argument is set to 0, this argument can be used to specify the To-surface or reference plane to define the ending position of the extent. Use this argument with the FromSurfOrRefPlane argument.
Description
Creates an ExtrudedProtrusion object.
Syntax
Visual Basic
Public Function AddFiniteExtrudedProtrusion( _
   ByVal NumberOfProfiles As Long, _
   ByRef ProfileArray() As Object, _
   ByVal ProfilePlaneSide As FeaturePropertyConstants, _
   ByVal ExtrusionDistance As Double, _
   Optional ByVal KeyPointOrTangentFace As Variant, _
   Optional ByVal KeyPointFlags As Variant, _
   Optional ByVal FromSurfOrRefPlane As Variant, _
   Optional ByVal ToSurfOrRefPlane As Variant _
) As Model
Parameters
NumberOfProfiles
Specifies the number of profiles that are to be used to create the extruded protrusion.
ProfileArray
Specifies the profiles that are to be used to create the extruded protrusion.
ProfilePlaneSide
ValueDescription
igAddRound
igAll
igAlongAnAxis
igAngularDummy
igAsConstruction
igBend
igBendAndFaceCornerRelief
igBendOnlyCornerRelief
igBothFeature Properties - Both
igChainedCornerRelief
igChamfer2Setbacks
igChamfer45degSetback
igChamferAngleSetback
igCircular
igCloseCornerCircleCutout
igCloseCornerClosed
igCloseCornerNone
igCloseCornerOpen
igClosed
igCloseFaces
igConcave
igConstantRadiusArc
igConstRadiusRound
igContinuous
igConvex
igCopy
igCornerRound
igCounterboreHole
igCounterboreProfileIsAtBottom
igCounterboreProfileIsAtTop
igCounterdrillHole
igCountersinkHole
igCurvatureContinuous
igCurvatureContinuousInterior
igCurveSetSeperator
igDeleteFaceHeal
igDelSMFaceBoth
igDelSMFaceNone
igDelSystemRelief
igDelZeroBendRadius
igDevelopableSurface
igEdgeBasedCrossSection
igEdgesByLoop
igEdgesByVertex
igEnd
igEndCaps
igEqualOffset
igEquationType
igExtendFeature Properties - Extend
igExtendBendRelief
igFacesTouchingCurvesOnly
igFilletBendRelief
igFinite
igFlangeCenterOfEdge
igFlangeEndFromEndEdge
igFlangeEndOnEndEdge
igFlangeFromBothEndsOfEdge
igFlangeFromDefinedStartPoint
igFlangeFullEdge
igFlangeMatchFace
igFlangeOffset
igFlangeStartFromEndEdge
igFlangeStartOnEndEdge
igFlatten
igFormedEnd
igFromNonReferenceEnd
igFromReferenceEnd
igFromTo
igFull
igGroove
igHemTypeCenteredLoop
igHemTypeClosed
igHemTypeClosedLoop
igHemTypeCurl
igHemTypeOpen
igHemTypeOpenLoop
igHemTypeSFlange
igIgnoreBlends
igInsideFeature Properties - Remove/Add Material Inside
igInsideDimension
igIntersect
igLancedEnd
igLeftFeature Properties - Project to Left
igLinear
igLinearCurvatureContinuousExtension
igLinearTangentExtension
igLip
igLouverFormedEndType
igLouverLancedEndType
igLouverRound
igLouverRoundNone
igMitreByAngle
igMitreByDist
igMitreManufacturingCut
igMitreNormalToThickness
igMitreParallelToThickness
igMitreRegularCut
igMove
igMultipleEdges
igNatural
igNeutralFactorFromExcel
igNFType
igNoCornerRound
igNoExtendFeature Properties - Do Not Extend
igNone
igNonSymmetric
igNormal
igNormalSideDummyFeature Properties - Normal Side
igNoRound
igNullConstant
igOffset
igOutsideFeature Properties - Remove/Add Material Outside
igOutsideDimension
igOverlapFaces
igParallelDummy
igParallelToPlane
igPartingFromCurve
igPartingFromEdge
igPartingFromPlane
igPartingFromSurface
igPatternAlongCurve
igPatternByTable
igPatternCircular
igPatternFillRegion
igPatternMirror
igPatternMountingBoss
igPatternRectangular
igPatternUserDefined
igPeriodic
igProfileBasedCrossSection
igProjectOptionProject
igProjectOptionWrap
igPunchedEnd
igRadial
igRaisedCounterboreSlot
igRecessedCounterboreSlot
igRecreateBlends
igRectangularBendRelief
igReflective
igRegularHole
igRegularSlot
igRegularThread
igRemoveBoundaries
igRemoveExternalBoundaries
igRemoveInternalBoundaries
igReverseNormal
igReverseNormalSideDummyFeature Properties - Reverse Normal Side
igRightFeature Properties - Project to Right
igRipBendRelief
igRipCornerRelief
igRndCapAcrossSharpEdges
igRndMiterAtCorner
igRndPreserveTopologyOff
igRndPreserveTopologyOn
igRndRollAcrossSharpEdges
igRndRollAcrossTangentEdgesOff
igRndRollAcrossTangentEdgesOn
igRndRollAlongBlendEdgesOff
igRndRollAlongBlendEdgesOn
igRndRollAroundCorner
igRoundAllVertexSetback
igRoundEndVertexEdgeSetback
igRoundSetbackIsAbsolute
igRoundSetbackIsRelative
igRoundSingleVertexSetback
igRoundStartVertexEdgeSetback
igRoundVertexEdgeSetback
igShowBoundaries
igSideInfoSetSeperator
igSingleEdge
igSMClearanceCutout
igSMFaceCutout
igSMMidPlaneCutout
igSplit
igSplitAngle1Left
igSplitAngle1Right
igSplitDraft
igStart
igStepDraft
igStepDraftPerpendicular
igStraightPipeThread
igSubtract
igSweepAlignArcLength
igSweepAlignNormal
igSweepAlignParallel
igSweepAlignParametrically
igSweepC1Continuity
igSweepC2Continuity
igSweepMergeAll
igSweepMergeAlongPath
igSweepMergeNone
igSweepScaleNone
igSweepScaleStartAndEnd
igSweepTwistNone
igSweepTwistStartAndEnd
igSweepTwistTurns
igSweepTwistTurnsPerUnitLength
igSymmetricFeature Properties - Symmetric Extent
igTangent
igTangentInterior
igTaperByAngle
igTaperByRatio
igTaperByRLRatio
igTaperDimAtBottom
igTaperDimAtTop
igTaperedEnd
igTaperedHole
igTaperedPipeThread
igTaperedToPlane
igTappedHole
igThickness
igThkInProfilePlane
igThkNormalToProfilePlane
igThreeHundredAndSixty
igThroughAll
igThroughAxis
igToEndOfEdge
igToggleToConstructionToggle from Design to Construction
igToggleToDesignToggle from Construction to Design
igToKeyPoint
igToNext
igTreatmentCircleCutout
igTreatmentCrown
igTreatmentDraft
igTreatmentFormedFeatureDisplayAsCenterMark
igTreatmentFormedFeatureDisplayAsModeled
igTreatmentFormedFeatureDisplayAsSketch
igTreatmentFormedFeatureDisplayAsSketchAndCenterMark
igTreatmentIntersect
igTreatmentMiterRelief
igTreatmentOff
igTreatmentRectangularCutout
igTreatmentUCutout
igTreatmentVCutout
igUnequalOffset
igUnite
igUShaped
igVarRadiusRound
igVBottomDimToFlat
igVBottomDimToV
igVShaped
igWeldGrooveCapProject
igWeldGrooveCapSameAsTop
igWeldGrooveCapSurface
Specifies if the protrusion is be extruded to the positive side, the negative side, or both sides of the profile.
ExtrusionDistance
Specifies the distance that the extruded protrusion extends from the profile. If the ProfilePlaneSide is symmetric, the extruded protrusion extends half the extrusion distance in the positive direction and half the extrusion distance in the negative direction from the profile. If the value for this argument is set to 0, you can also use KeyPointOrTangentFace or FromSurfOrRefPlane and ToSurfOrRefPlane optional arguments to specify the extent.
KeyPointOrTangentFace
When the ExtrusionDistance argument is set to 0, this argument can be used to specify the extent using the keypoint or tangent face. If a tangent face is used, you need to use the KeyPointFlags argument to specify the distance.
KeyPointFlags
Optional if the KeyPoint argument is used to define the extent, but required if the TangentFace argument is used to specify the extent. Specify the KeyPointFlags using the KeyPointExtentConstants value.
FromSurfOrRefPlane
When the ExtrusionDistance argument is set to 0, this argument can be used to specify the From-surface or reference plane to define the starting position of the extent. Use this argument with the ToSurfOrRefPlane argument.
ToSurfOrRefPlane
When ExtrusionDistance argument is set to 0, this argument can be used to specify the To-surface or reference plane to define the ending position of the extent. Use this argument with the FromSurfOrRefPlane argument.
Remarks
This method is typically used to create a base feature that is an extruded protrusion. Additional protrusions are created through the ExtrudedProtrusions collection. The AddFiniteExtrudedProtrusion method requires the input of one or more Profile objects to define the reference plane and wireframe geometry for the extruded protrusion. In this method, the distance and extension direction (in relation to the profile plane) must be supplied. This method fails if called more than one time because only one base feature (or Model) is valid in a Part file
Example
Private Sub Form_Load()
    Dim objApp As SolidEdgeFramework.Application
    Dim objDoc As SolidEdgePart.PartDocument
    Dim objEPProfile As SolidEdgePart.Profile
    Dim objEPProfile01 As SolidEdgePart.Profile
    Dim objEPProfile02 As SolidEdgePart.Profile
    Dim objEPProfile03 As SolidEdgePart.Profile
    Dim objEPProfArray(1 To 3) As SolidEdgePart.Profile
    Dim objModel As SolidEdgePart.Model
    Dim objFromRP As SolidEdgePart.RefPlane
    Dim objToRP As SolidEdgePart.RefPlane
    Dim lngStatus As Long
    ' Report errors
    Const PI = 3.14159265358979
    ' Create/get the application with specific settings
    On Error Resume Next
    Set objApp = GetObject(, "SolidEdge.Application")
    If Err Then
        Err.Clear
        Set objApp = CreateObject("SolidEdge.Application")
        Set objDoc = objApp.Documents.Add("SolidEdge.PartDocument")
        objApp.Visible = True
    Else
        Set objDoc = objApp.ActiveDocument
    End If
    ' *** creating the base extruded protrusion feature symmetrically
    ' creating the profile and validating it
    Set objEPProfile = objDoc.ProfileSets.Add.Profiles.Add(pRefPlaneDisp:=objDoc.RefPlanes(1))
    Call objEPProfile.Circles2d.AddByCenterRadius(x:=0, y:=0, Radius:=0.05)
    lngStatus = objEPProfile.End(ValidationCriteria:=igProfileClosed)
    If lngStatus <> 0 Then
        MsgBox "Profile for the base feature is not closed"
    End If
    ' creating the base extruded protrusion feature
    Set objEPProfArray(1) = objEPProfile
    Set objModel = objDoc.Models.AddFiniteExtrudedProtrusion(NumberOfProfiles:=1, _
                                                             ProfileArray:=objEPProfArray, ProfilePlaneSide:=igSymmetric, _
                                                             ExtrusionDistance:=0.1)
    'Turn off the profile
    objEPProfile.Visible = False
    ' USER DISPLAY
    ' Release objects
    Set objApp = Nothing
    Set objDoc = Nothing
    Set objEPProfile = Nothing
    Set objEPProfArray(1) = Nothing
    Set objModel = Nothing
    Set objEPProfile01 = Nothing
    Set objEPProfile02 = Nothing
    Set objEPProfile03 = Nothing
    Set objFromRP = Nothing
    Set objToRP = Nothing
End Sub
See Also

Models Collection  | Models Members