Autodesk Inventor
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic to the Top
- Bookmark
- Subscribe
- Printer Friendly Page
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
yes, this may help. I will try this tomorrow in the office.
thanks!
can you please recommend me the best, shortest, easiest way to learn how to make macros and rules. They are quite the same thing, no?
Windows 7 x64
Dell Precision T7400 Intel(R) Xeon(R) CPU X5472 @ 3.00GHz (4 CPU's), 8Gb RAM, NVIDIA Quadro FX 5600 1536MB GDDR3
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
HI fakeru,
If you're looking to start with iLogic (which I think is a good place to start) you can use these tutorials:
And here are some examples:
http://inventortrenches.blogspot.com/search/label/
If you're looking to work with VBA and Inventor's Application Programing Interface (API), here are a couple of links that should get you started:
... the paper below provides a brief overview of Inventor’s programming interface and illustrates this with examples using iProperties.
| VBA & Inventor API Introduction (zip - 547Kb) |
The following resource will help you get started with programming Inventor. It assumes familiarity with Autodesk Inventor and general programming concepts.
A self-paced video tutorial demonstrating how to get started developing with Autodesk Inventor.
View online | Download
Check out the Self-Paced Guide “My First Plug-in” presented by the ADN Inventor Team
www.autodesk.com/myfirstinventorplugin
I hope this helps.
Best of luck to you in all of your Inventor pursuits,
Curtis
http://inventortrenches.blogspot.com

Did you find this reply helpful ? If so please use the Accept as Solution or Kudos button below.
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
There is one solution using API code to manage the drawing curves within every component in layer.
For example, there are three components in assebmly and create drawing view, this solution will create three layers in style editor for these three components respectively, and the drawing curves in each view projected from the component will be managed in the layer, and the layer's name is the same with the name of component.
Please copy the code in attached text, and paste it in VBA editor within one new drawing, then save it as one template. When the assembly is done, please create drawing views using this template. When the drawing views are done, please run the Macro and you will see the several layers created in style editor. So you can change the color of layer to change the color of drawing curves, which will keep the parts in all the views colored with the same color.
please see the attached image for more details.
Thanks,
River Cai
River Cai
Quality Assurance Team
Autodesk, Inc.
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Unfortunately both scripts don't work properly... Not all the edges are colored (in case of first script) or included in the new layers (in case of the second script). I noticed these edges are tangent edges of the revolution features. In the attachment you can see the screenshot and you will understand. That is a part in the assembly. Any solution?
Windows 7 x64
Dell Precision T7400 Intel(R) Xeon(R) CPU X5472 @ 3.00GHz (4 CPU's), 8Gb RAM, NVIDIA Quadro FX 5600 1536MB GDDR3
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
I have seen the attached image, and got the issue you show. This Macro does work fine on R2011, and looks that you are using R2012 now. If yes, this is a known issue, and is not reproducible on R2012 SP1 internal build.
When SP1 is released, please have it packaged for a try.
Thanks,
River Cai
River Cai
Quality Assurance Team
Autodesk, Inc.
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
yes, I'm using R2012 and there is little chance that I will have SP1 update...
What a shame!
Windows 7 x64
Dell Precision T7400 Intel(R) Xeon(R) CPU X5472 @ 3.00GHz (4 CPU's), 8Gb RAM, NVIDIA Quadro FX 5600 1536MB GDDR3
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
SP1 fixed the problem! ![]()
Windows 7 x64
Dell Precision T7400 Intel(R) Xeon(R) CPU X5472 @ 3.00GHz (4 CPU's), 8Gb RAM, NVIDIA Quadro FX 5600 1536MB GDDR3
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Brian Ekins' code uses the following line to set each collected edge to a colored layer:
Call drawView.Parent.ChangeLayer(objColl, colorLayer
I have a problem with this method, because when I try to set the layer of a certain component, Inventor thinks about it for at least 20 minutes. I don't know if it ever completes the process, because I haven't waited it out. This is just too long. If I just right-click the component (in the browser) and select Properties, I can change the color and linetype (see image) and it works immediately without bogging down.
So my question is, how do I write code to automatically change the properties just like I can do manually? Is there a function I can call instead of ChangeLayer() that will do this, so I don't have to use layers?
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
So, this is what I came up with:
Dim drawViews As DrawingView
For Each drawViews In ThisApplication.ActiveDocument.ActiveSheet.DrawingViews
occ = drawViews.ReferencedDocumentDescriptor.ReferencedD
Dim newColor As Color
newColor = ThisApplication.TransientObjects.CreateColor(0,255,255)
Dim drawcurves As DrawingCurvesEnumerator
drawcurves = drawViews.DrawingCurves(occ)
Dim drawCurve As DrawingCurve
For Each drawCurve In drawcurves
drawCurve.Color() = newColor
Next
Next
This works insofar as it gets around using layers, but I still have the problem of Inventor bogging down changing the color for each edge. What I need to be able to do is write code that will do the same thing as when I right-click a component, choose Properties, and change the component color (rather than right-clicking a component, choosing "Select as edges" and then Properties > change color). When done manually, this only takes a second.
Code gurus: Can this be done? How?
Re: iLogic Rule for idw drawing
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Since this thread has been solved, I decided I really should start a new post here:



