• Industries
  • Products
  • Buy
  • Services & Support
  • Communities
  • Discussion Groups

    Autodesk Inventor Customization

    Reply
    Active Contributor
    Posts: 26
    Registered: ‎10-10-2009
    Accepted Solution

    Convert model parameter to reference parameter

    142 Views, 4 Replies
    10-02-2012 07:52 PM

    I need to convert a model parameter to a reference parameter thru the API.

    I saw this item discussed in the group before, but I cant find the thread.

    Can anyone help me out?

    Please use plain text.
    *Pro
    jletcher
    Posts: 1,316
    Registered: ‎05-18-2011

    Re: Convert model parameter to reference parameter

    10-03-2012 11:37 AM in reply to: tclayton
    Property Driven() As VARIANT_BOOL

     


    Please mark this response as "Accept as Solution" if it answers your question.

    James Letcher
    2012 Factory Design Suite ( will not load 2013)
    What happen to my Inventor :-(
    Please use plain text.
    Active Contributor
    Posts: 26
    Registered: ‎10-10-2009

    Re: Convert model parameter to reference parameter

    10-04-2012 08:29 PM in reply to: jletcher

    Sorry, I didn't get that answer.

    Has anyone put the " ModelParameter.Convert to Reference Parameter" Method? 

    Please use plain text.
    ADN Support Specialist
    Posts: 167
    Registered: ‎08-14-2012

    Re: Convert model parameter to reference parameter

    10-11-2012 12:16 AM in reply to: tclayton

    ConvertToReferenceParameter method works fine but not for built-in model parameters. See help.   If you create model parameter programmatically then you are free to call this method. Try the following VBA sample.

     

    Private Sub Model2Refs_1()
    
      Dim oDef As PartComponentDefinition
      Set oDef = ThisApplication.ActiveDocument.ComponentDefinition
      
      Dim oPars As Parameters
      Set oPars = oDef.Parameters
      
      Dim oModelPars As ModelParameters
      Set oModelPars = oPars.ModelParameters
      
      Dim oModelPar As ModelParameter
      'create model parameter (not built-in)
      Set oModelPar = oModelPars.AddByExpression("333 mm", "mm", "NonBuiltIn")
      
      'change its type to reference
      Call oModelPar.ConvertToReferenceParameter
      
    End Sub

     

    You may control Boolean Driven property of dimension constraints. Create new part with the rectangle on the first sketch + create pair of dimensions (so you will get pair of model parameters). The following VBA code convert parameter which controls the first dimension constraint to reference type.

    Private Sub Model2Refs_2()
      
      Dim oDoc As PartDocument
      Set oDoc = ThisApplication.ActiveDocument
      
      Dim oDef As PartComponentDefinition
      Set oDef = oDoc.ComponentDefinition
      
      Dim oSketch As PlanarSketch
      Set oSketch = oDef.Sketches.Item(1)
      
      Dim oDims As DimensionConstraints
      Set oDims = oSketch.DimensionConstraints
      
      Dim oDim As TwoPointDistanceDimConstraint
      Set oDim = oDims.Item(1)
      
      oDim.Driven = True
      
    End Sub

     

    Hope the idea is clear.

    Cheers,



    Vladimir Ananyev
    Developer Technical Services
    Autodesk Developer Network

    Please use plain text.
    Active Contributor
    Posts: 26
    Registered: ‎10-10-2009

    Re: Convert model parameter to reference parameter

    10-11-2012 06:51 AM in reply to: Vladimir.Ananyev

    Excellent answer, thank you

    Please use plain text.