<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: New to Inventor in Inventor Programming - iLogic, Macros, AddIns &amp; Apprentice</title>
    <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12867341#M168976</link>
    <description>&lt;P&gt;Is this tool not in inventor? Because I remember using it on it...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Maybe my computer just needs to a Bluetooth reboot to your crystal ball.&lt;/P&gt;</description>
    <pubDate>Fri, 28 Jun 2024 15:43:06 GMT</pubDate>
    <dc:creator>jeslinakoruth</dc:creator>
    <dc:date>2024-06-28T15:43:06Z</dc:date>
    <item>
      <title>New to Inventor</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12854431#M168751</link>
      <description>&lt;P&gt;My code either gives me catastrophic error or says my values are not double. Any tips?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;' Prompt the user for the part OD&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt;
&lt;SPAN&gt;partOD&lt;/SPAN&gt; = &lt;SPAN&gt;CDbl&lt;/SPAN&gt;(&lt;SPAN&gt;InputBox&lt;/SPAN&gt;(&lt;SPAN&gt;"Enter the Part OD:"&lt;/SPAN&gt;, &lt;SPAN&gt;"Part OD Input"&lt;/SPAN&gt;))

&lt;SPAN&gt;' Set dimensions based on part OD&lt;/SPAN&gt;
&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;gt; 0 &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;lt;= 2.25 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;size&lt;/SPAN&gt; = 3.5
    &lt;SPAN&gt;sizec&lt;/SPAN&gt; = 3.5
    &lt;SPAN&gt;sizeb&lt;/SPAN&gt; = 3.5
    &lt;SPAN&gt;sizet&lt;/SPAN&gt; = 3.5
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;gt; 2.25 &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;lt;= 3.5 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;size&lt;/SPAN&gt; = 4.75
    &lt;SPAN&gt;sizec&lt;/SPAN&gt; = 4.75
    &lt;SPAN&gt;sizeb&lt;/SPAN&gt; = 4.75
    &lt;SPAN&gt;sizet&lt;/SPAN&gt; = 4.75
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;gt; 3.5 &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;lt;= 4.5 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;size&lt;/SPAN&gt; = 6.0
    &lt;SPAN&gt;sizec&lt;/SPAN&gt; = 6.0
    &lt;SPAN&gt;sizeb&lt;/SPAN&gt; = 6.0
    &lt;SPAN&gt;sizet&lt;/SPAN&gt; = 6.0
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;gt; 4.5 &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;lt;= 6.25 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;size&lt;/SPAN&gt; = 7.75
    &lt;SPAN&gt;sizec&lt;/SPAN&gt; = 7.75
    &lt;SPAN&gt;sizeb&lt;/SPAN&gt; = 7.75
    &lt;SPAN&gt;sizet&lt;/SPAN&gt; = 7.75
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;gt; 6.25 &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;lt;= 8.0 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;size&lt;/SPAN&gt; = 9.75
    &lt;SPAN&gt;sizec&lt;/SPAN&gt; = 9.75
    &lt;SPAN&gt;sizeb&lt;/SPAN&gt; = 9.75
    &lt;SPAN&gt;sizet&lt;/SPAN&gt; = 9.75
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;gt; 10 &lt;SPAN&gt;And&lt;/SPAN&gt; &lt;SPAN&gt;partOD&lt;/SPAN&gt; &amp;lt;= 12 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;size&lt;/SPAN&gt; = 14.0
    &lt;SPAN&gt;sizec&lt;/SPAN&gt; = 14.0
    &lt;SPAN&gt;sizeb&lt;/SPAN&gt; = 14.0
    &lt;SPAN&gt;sizet&lt;/SPAN&gt; = 14.0
&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;

&lt;SPAN&gt;' Set other dimensions based on the sizes&lt;/SPAN&gt;
&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;size&lt;/SPAN&gt; = 3.5 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;zdiameter&lt;/SPAN&gt; = 3.245
    &lt;SPAN&gt;zdiameterc&lt;/SPAN&gt; = 3.245
    &lt;SPAN&gt;zdiameterb&lt;/SPAN&gt; = 3.245
    &lt;SPAN&gt;zdiametert&lt;/SPAN&gt; = 3.245
    &lt;SPAN&gt;maxpindiameter&lt;/SPAN&gt; = 1.125
    &lt;SPAN&gt;maxpindiameterc&lt;/SPAN&gt; = 1.125
    &lt;SPAN&gt;maxpindiameterb&lt;/SPAN&gt; = 1.125
    &lt;SPAN&gt;maxpindiametert&lt;/SPAN&gt; = 1.125
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;size&lt;/SPAN&gt; = 4.75 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;zdiameter&lt;/SPAN&gt; = 4.495
    &lt;SPAN&gt;zdiameterc&lt;/SPAN&gt; = 4.495
    &lt;SPAN&gt;zdiameterb&lt;/SPAN&gt; = 4.495
    &lt;SPAN&gt;zdiametert&lt;/SPAN&gt; = 4.495
    &lt;SPAN&gt;maxpindiameter&lt;/SPAN&gt; = 1.125
    &lt;SPAN&gt;maxpindiameterc&lt;/SPAN&gt; = 1.125
    &lt;SPAN&gt;maxpindiameterb&lt;/SPAN&gt; = 1.125
    &lt;SPAN&gt;maxpindiametert&lt;/SPAN&gt; = 1.125
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;size&lt;/SPAN&gt; = 6.0 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;zdiameter&lt;/SPAN&gt; = 5.745
    &lt;SPAN&gt;zdiameterc&lt;/SPAN&gt; = 5.745
    &lt;SPAN&gt;zdiameterb&lt;/SPAN&gt; = 5.745
    &lt;SPAN&gt;zdiametert&lt;/SPAN&gt; = 5.745
    &lt;SPAN&gt;maxpindiameter&lt;/SPAN&gt; = 1.5
    &lt;SPAN&gt;maxpindiameterc&lt;/SPAN&gt; = 1.5
    &lt;SPAN&gt;maxpindiameterb&lt;/SPAN&gt; = 1.5
    &lt;SPAN&gt;maxpindiametert&lt;/SPAN&gt; = 1.5
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;size&lt;/SPAN&gt; = 7.75 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;zdiameter&lt;/SPAN&gt; = 7.495
    &lt;SPAN&gt;zdiameterc&lt;/SPAN&gt; = 7.495
    &lt;SPAN&gt;zdiameterb&lt;/SPAN&gt; = 7.495
    &lt;SPAN&gt;zdiametert&lt;/SPAN&gt; = 7.495
    &lt;SPAN&gt;maxpindiameter&lt;/SPAN&gt; = 1.75
    &lt;SPAN&gt;maxpindiameterc&lt;/SPAN&gt; = 1.75
    &lt;SPAN&gt;maxpindiameterb&lt;/SPAN&gt; = 1.75
    &lt;SPAN&gt;maxpindiametert&lt;/SPAN&gt; = 1.75
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;size&lt;/SPAN&gt; = 9.75 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;zdiameter&lt;/SPAN&gt; = 9.495
    &lt;SPAN&gt;zdiameterc&lt;/SPAN&gt; = 9.495
    &lt;SPAN&gt;zdiameterb&lt;/SPAN&gt; = 9.495
    &lt;SPAN&gt;zdiametert&lt;/SPAN&gt; = 9.495
    &lt;SPAN&gt;maxpindiameter&lt;/SPAN&gt; = 1.875
    &lt;SPAN&gt;maxpindiameterc&lt;/SPAN&gt; = 1.875
    &lt;SPAN&gt;maxpindiameterb&lt;/SPAN&gt; = 1.875
    &lt;SPAN&gt;maxpindiametert&lt;/SPAN&gt; = 1.875
&lt;SPAN&gt;ElseIf&lt;/SPAN&gt; &lt;SPAN&gt;size&lt;/SPAN&gt; = 14.0 &lt;SPAN&gt;Then&lt;/SPAN&gt;
    &lt;SPAN&gt;zdiameter&lt;/SPAN&gt; = 13.745
    &lt;SPAN&gt;zdiameterc&lt;/SPAN&gt; = 13.745
    &lt;SPAN&gt;zdiameterb&lt;/SPAN&gt; = 13.745
    &lt;SPAN&gt;zdiametert&lt;/SPAN&gt; = 13.745
    &lt;SPAN&gt;maxpindiameter&lt;/SPAN&gt; = 2.75
    &lt;SPAN&gt;maxpindiameterc&lt;/SPAN&gt; = 2.75
    &lt;SPAN&gt;maxpindiameterb&lt;/SPAN&gt; = 2.75
    &lt;SPAN&gt;maxpindiametert&lt;/SPAN&gt; = 2.75
&lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"size"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;size&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"sizec"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;sizec&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"sizeb"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;sizeb&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"sizet"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;sizet&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"zdiameter"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;zdiameter&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"zdiameterc"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;zdiameterc&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"zdiameterb"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;zdiameterb&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"zdiametert"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;zdiametert&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"maxindiameter"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;maxpindiameter&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"maxpindiameterc"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;maxpindiameterc&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"maxpindiameterb"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;maxpindiameterb&lt;/SPAN&gt; 
&lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveDocument&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Parameters&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"maxpinDiametert"&lt;/SPAN&gt;).&lt;SPAN&gt;Value&lt;/SPAN&gt; = &lt;SPAN&gt;maxpindiametert&lt;/SPAN&gt; 
 &lt;/PRE&gt;</description>
      <pubDate>Fri, 21 Jun 2024 20:01:24 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12854431#M168751</guid>
      <dc:creator>jeslinakoruth</dc:creator>
      <dc:date>2024-06-21T20:01:24Z</dc:date>
    </item>
    <item>
      <title>Re: New to Inventor</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12858332#M168796</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/15696695"&gt;@jeslinakoruth&lt;/a&gt;.&amp;nbsp; It is difficult to diagnose problems with your code without being familiar with what all the custom terms being used within it represent.&amp;nbsp; Since the code is just black &amp;amp; white text in a code window (the way we usually like to see it) we can not tell if some of them may be blue, unquoted names of parameters, and directly recognized as representing local parameters...or just terms being used as local variables within the code, and do not actually directly represent parameters.&amp;nbsp; We also do not know what types of parameters they are, or what types of values they may have.&amp;nbsp; At first, working with parameters can be a bit tricky, due to the differences in units and automatic (or not) unit conversions that happen.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is 'partOD' only a local variable, as it looks like, or is it also the exact spelling and capitalization of a parameter in the same model that the iLogic rule is saved within?&amp;nbsp; Same for 'size', 'sizec', 'sizeb', 'sizet', 'zdiameter', zdiameterc' , 'zdiameterb', 'zdiametert', and so on.&amp;nbsp; If any of those terms are just local variables, then they should be 'declared' (using the Dim keyword), and should have their Type specified where they are declared, such as:&lt;/P&gt;
&lt;LI-CODE lang="general"&gt;Dim size As Double&lt;/LI-CODE&gt;
&lt;P&gt;...if that is just a local variable, and not a blue, unquoted parameter name.&amp;nbsp; Also, keep in mind that when working with blue, unquoted parameter names, or when working with the Parameter("ParamName") type iLogic snippets, the 'value' will be in 'document units' (the value specified within the Document Settings as the default length/distance unit), not necessarily in the parameter's own units (if they are different units).&amp;nbsp; However, when working accessing the actual Parameter object by Inventor API code (such as what you are doing in the last 12 or so lines of code), then the value will always be in 'database units' (always centimeters for length/distance, no matter what the document units or parameter units are).&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jun 2024 15:30:39 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12858332#M168796</guid>
      <dc:creator>WCrihfield</dc:creator>
      <dc:date>2024-06-24T15:30:39Z</dc:date>
    </item>
    <item>
      <title>Re: New to Inventor</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12858469#M168799</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/15696695"&gt;@jeslinakoruth&lt;/a&gt;.&amp;nbsp; This is just a slightly modified version of your original code.&amp;nbsp; I added some additional feedback into it, and enclosed some areas of the code within a few &lt;A href="https://learn.microsoft.com/en-us/dotnet/visual-basic/language-reference/statements/try-catch-finally-statement" target="_blank" rel="noopener"&gt;Try...Catch...End Try&lt;/A&gt; statements, to help narrow down where errors are happening, and potentially avoid them.&amp;nbsp; I do not know if this will actually eliminate any errors you are currently seeing, but it may help you narrow down where the error is happening or further develop your code in a way to avoid the errors.&lt;/P&gt;
&lt;LI-CODE lang="general"&gt;' Prompt the user for the part OD
Dim sPartOD As String = InputBox("Enter the Part OD:", "Part OD Input", "")
If sPartOD = "" Then Return 'exit rule if no value entered
Dim dPartOD As Double
If Double.TryParse(sPartOD, dPartOD) = False Then
	MsgBox("Could not convert input value to a Double!", vbCritical, "iLogic")
	Return
End If

'if you expect that an error could happen, but can not avoid it
'then you can enclose the code within a Try...Catch...End Try statement
'that will 'catch / handle' the error, allowing your code to continue, if needed
'the Catch side can be used for feedback, and/or to try an alternate code

Try
	' Set dimensions based on part OD
	If dPartOD &amp;gt; 0 And dPartOD &amp;lt;= 2.25 Then
		size = 3.5
		sizec = 3.5
		sizeb = 3.5
		sizet = 3.5
	ElseIf dPartOD &amp;gt; 2.25 And dPartOD &amp;lt;= 3.5 Then
		size = 4.75
		sizec = 4.75
		sizeb = 4.75
		sizet = 4.75
	ElseIf dPartOD &amp;gt; 3.5 And dPartOD &amp;lt;= 4.5 Then
		size = 6.0
		sizec = 6.0
		sizeb = 6.0
		sizet = 6.0
	ElseIf dPartOD &amp;gt; 4.5 And dPartOD &amp;lt;= 6.25 Then
		size = 7.75
		sizec = 7.75
		sizeb = 7.75
		sizet = 7.75
	ElseIf dPartOD &amp;gt; 6.25 And dPartOD &amp;lt;= 8.0 Then
		size = 9.75
		sizec = 9.75
		sizeb = 9.75
		sizet = 9.75
	ElseIf dPartOD &amp;gt; 10 And dPartOD &amp;lt;= 12 Then
		size = 14.0
		sizec = 14.0
		sizeb = 14.0
		sizet = 14.0
	End If
	Logger.Info("Checked 'PartOD' and set 'size' param value OK.")
Catch ex As Exception
	MsgBox("Error while checking 'PartOD' or setting value of 'size' parameter." _
	&amp;amp; vbCrLf &amp;amp; ex.Message, vbExclamation, "iLogic")
	Return
End Try

'apply any changes made to local variables representing parameters
'to the model document at this point
RuleParametersOutput()


Try
	' Set other dimensions based on the sizes
	If size = 3.5 Then
		zdiameter = 3.245
		zdiameterc = 3.245
		zdiameterb = 3.245
		zdiametert = 3.245
		maxpindiameter = 1.125
		maxpindiameterc = 1.125
		maxpindiameterb = 1.125
		maxpindiametert = 1.125
	ElseIf size = 4.75 Then
		zdiameter = 4.495
		zdiameterc = 4.495
		zdiameterb = 4.495
		zdiametert = 4.495
		maxpindiameter = 1.125
		maxpindiameterc = 1.125
		maxpindiameterb = 1.125
		maxpindiametert = 1.125
	ElseIf size = 6.0 Then
		zdiameter = 5.745
		zdiameterc = 5.745
		zdiameterb = 5.745
		zdiametert = 5.745
		maxpindiameter = 1.5
		maxpindiameterc = 1.5
		maxpindiameterb = 1.5
		maxpindiametert = 1.5
	ElseIf size = 7.75 Then
		zdiameter = 7.495
		zdiameterc = 7.495
		zdiameterb = 7.495
		zdiametert = 7.495
		maxpindiameter = 1.75
		maxpindiameterc = 1.75
		maxpindiameterb = 1.75
		maxpindiametert = 1.75
	ElseIf size = 9.75 Then
		zdiameter = 9.495
		zdiameterc = 9.495
		zdiameterb = 9.495
		zdiametert = 9.495
		maxpindiameter = 1.875
		maxpindiameterc = 1.875
		maxpindiameterb = 1.875
		maxpindiametert = 1.875
	ElseIf size = 14.0 Then
		zdiameter = 13.745
		zdiameterc = 13.745
		zdiameterb = 13.745
		zdiametert = 13.745
		maxpindiameter = 2.75
		maxpindiameterc = 2.75
		maxpindiameterb = 2.75
		maxpindiametert = 2.75
	End If
	Logger.Info("Checked 'size' and set value of 'zdiameter'/'maxpindiameter' params OK.")
Catch ex As Exception
	MsgBox("Error checking 'size' or setting value of 'zdiameter'/'maxpindiameter'." _
	&amp;amp; vbCrLf &amp;amp; ex.Message, vbExclamation, "iLogic")
	Return
End Try

'apply any changes made to local variables representing parameters
'to the model document at this point
RuleParametersOutput()

'get access to the document
Dim oDoc As Inventor.Document = ThisDoc.Document
'get access to its parameters
Dim oParams As Inventor.Parameters = Nothing
If (TypeOf oDoc Is AssemblyDocument) OrElse (TypeOf oDoc Is PartDocument) Then
	oParams = oDoc.ComponentDefinition.Parameters
ElseIf (TypeOf oDoc Is DrawingDocument) Then
	oParams = oDoc.Parameters
End If
If oParams Is Nothing Then Return 'exit rule, parameters collection could not be obtained

'if any of these parameters are not found, it will throw an error
'if the document is ReadOnly for some reason, then trying to change parameter values will throw error
'if the file is in the Content Center or a library folder, it will act like ReadOnly
Try
	oParams.Item("size").Value = size
	oParams.Item("sizec").Value = sizec
	oParams.Item("sizeb").Value = sizeb
	oParams.Item("sizet").Value = sizet
	oParams.Item("zdiameter").Value = zdiameter
	oParams.Item("zdiameterc").Value = zdiameterc
	oParams.Item("zdiameterb").Value = zdiameterb
	oParams.Item("zdiametert").Value = zdiametert
	oParams.Item("maxindiameter").Value = maxpindiameter
	oParams.Item("maxpindiameterc").Value = maxpindiameterc
	oParams.Item("maxpindiameterb").Value = maxpindiameterb
	oParams.Item("maxpinDiametert").Value = maxpindiametert
	Logger.Info("Set param values OK.")
Catch ex As Exception
	MsgBox("Error setting parameter values." &amp;amp; vbCrLf &amp;amp; _
	ex.Message, vbExclamation, "iLogic")
	Return
End Try&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jun 2024 16:41:41 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12858469#M168799</guid>
      <dc:creator>WCrihfield</dc:creator>
      <dc:date>2024-06-24T16:41:41Z</dc:date>
    </item>
    <item>
      <title>Re: New to Inventor</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12858628#M168803</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/15696695"&gt;@jeslinakoruth&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;&lt;P&gt;My code either gives me catastrophic error or says my values are not double. Any tips?&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;That go nothing to do with being new in Inventor.&lt;/P&gt;&lt;P&gt;That's programmer error.&lt;/P&gt;&lt;P&gt;VB complaining about value not double means you assigning wrong variables.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What's the "catastrophic error"?&lt;/P&gt;&lt;P&gt;Which values are not double?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My crystal ball having trouble connecting to your computer.&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jun 2024 18:18:37 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12858628#M168803</guid>
      <dc:creator>Frederick_Law</dc:creator>
      <dc:date>2024-06-24T18:18:37Z</dc:date>
    </item>
    <item>
      <title>Re: New to Inventor</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12867341#M168976</link>
      <description>&lt;P&gt;Is this tool not in inventor? Because I remember using it on it...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Maybe my computer just needs to a Bluetooth reboot to your crystal ball.&lt;/P&gt;</description>
      <pubDate>Fri, 28 Jun 2024 15:43:06 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-ilogic/new-to-inventor/m-p/12867341#M168976</guid>
      <dc:creator>jeslinakoruth</dc:creator>
      <dc:date>2024-06-28T15:43:06Z</dc:date>
    </item>
  </channel>
</rss>

