AutoCAD Inventor :: Change Parameters On Component Instances In Assembly?
Aug 11, 2013
I have a part called "bracket" which has a multi-value parameter "mass" which can be 100, 200, 300, or 400 and controls the width of the bracket.I have an assembly into which I have placed thee brackets.
How do I set different parameters for each of the instances of "bracket"?I want one bracket with mass = 100, one with mass = 200, and one with mass = 300, such that I have three brackets of different widths.
I must not be searching on the right text in Google because I find only ways to change the value of the parameter within the core component (such that all brackets change and end up the same width).
I have a wall of frames, if you will, and some frames within this wall are different sizes. When doing the BOM, I want to be able to combine anything that has the same stock number as well as the same cut length. The only way I have thought to do this so far is to cycle through each stock number and if the cut length is the same, I override the quantity of one and change the BOM Structure of the other to "Reference".
How can I change the BOM Structure to reference without selecting the part or going through the BOM Editor? Is there some VBA code I could utilize? I am striking out by solely using iLogic.
I have an assembly which contains a CComPtr<ComponentOccurrence> pThisCompOcc , and I'd like to do two things.
Get the name of the "base" object, not the display name of the occurence Change the model and user parameter values of the occurrence I suspect that I need to find the function or method which gives me a CComPtr<PartComponentDefinition> pPartCompDef which the occurrence points to for the Q1, but what about Q2?
Presumably the parameters are associated with the Component Occurrence and the "real" name is associated with the Part Component Definition?
Is it possible to change the parameters of a custom ipart in an assembly after it has been inserted, or can I only do an insert using AddCustomiPartMember?
In that case I simply remove the previous occurrence and insert a new one I suppose?
I have a few components in my assembly that I want to turn off under certain conditions. Using Component.IsActive, I can turn on or off an instance, but some of the components are in a pattern, and I want to turn on or off all instances of the component. To add to the challenge, the component patters are driven from Excel, and the quantity of parts changes.How can I turn off all of the instances of a pattern?
I use a "dump assembly" of assemblies to create cut lists. I throw in multiple copies of each assembly for the job. Sometimes it can be 100 or so of each.These are not placed in any way and could be all placed at the origin. This is only for the parts list and servers no other function.
Any way to place multiple instances of an assembly at once?
I have created a iLogic form for my skeletal part file that drives my assembly. The issues is that it is a few steps to get the assembly to update.
Current Steps: open skeletal part fileuse form to change size parameterssave new skeletal size changesopen assemblypress the update button if changes haven't already been applied...I have tried to link these parameters directly to the assembly and tried to create the form using those linked parameters from the skeletal part file. It looks like it would work, but I am unable to edit the parameters once the form is created.
I am hoping that the I can skip opening and editing the skeletal part file.open assembly fileuse form to change size and dimensions, and all part files and drawings are updated to that new shape and size.
I have tried to create a global Form in the skeletal part file, and tried to update the size changes in the assembly file.I was able to changes the inputs this way, but once I pressed the apply I get an error with no changes. what I want but I am not very up to date on iLogic or these forms. I will be searching Google for now.
I am trying to make port rims for pipes that can be swapped in and out of an assembly. However, the ports will all be different sizes and located differently so I need the cut to be part of the port rim component, but affect the entire assembly it is part of. I've been trying to get this to work for the better part of a day now,Here's a picture of what im talking about. I'm running Inventor 2008 by the way.
I'm looking for the best way to create a separate assembly out of various component parts in an existing assembly so that the whole thing can be placed in an assembly as you would a part, I know it's possible to demote components within an assembly but are there any other methods similar / better ?
I want to be able to control the location/position of a component in an assembly. This is easy enough through the iProperties/Occurrence tab and then adjust the location of the X,Y, and Z offsets. Is this possible using iLogic? I have been unable to find a function to access via iLogic. Ultimately I am trying to translate a component about an axis not a pattern.
We are having an issue when we replace a component in Inventor Pro 2012. When we replace a component, the name in the browser does not update to the new component. We've even tried to close and re-open the Inventor assembly and that does not work. We end up manual double clicking the name in the browser and type in the new component name.
Inventor Product Design Suite Ultimate 2012 Dell Precision T7500 Workstation Xeon Processor 16 GB of RAM Nvidia Quadro FX 5800 Windows 7 x64
I have an assembly with multiple instances of a subassembly. I'd like to remove the subassembly and place the subassembly components (i.e. multiple instances) in the main assembly. When complete, the top assembly would have multiple instances of all the subassembly components.
Component promote seems like the right way to do this. So, I selected an instance of one of the subassemblies components and promoted it. That component was promoted, removing it from the subassembly as placing it in my top level assembly.
However, all the other instances of that component disappear (which makes sense since that component is no longer in the subassembly). Unfortunately, this means I have to assemble and constrain all the other instances that disappeared.
I'm working on an iLogic application for an assembly. I need some code to edit a particular component occurrence and then open one of that component's iLogic forms.
Basically automating the keystrokes that I'm doing manually (Select, right-click and edit, then open the iLogic form for that part). Do I have to scroll through all occurrences in the browser or is there a way to call that component by name?
I use Inventor 2013 as a single user, my company is about to invest in Vault and we are about to introduce a new automated Part Numbering Scheme as well.
I use a spreadsheet and iLogic rules as ‘Product Configurator’ to generate new iterations of my master assembly.
Now, the Assembly Browser in Inventor may display my assembly tree and its components by Part No or File Name or Default Browser Nod. See attached image.
This can be selected and set on the ribbon: click Assemble tab Productivity panel Rename Browser Nodes.
For example at Top Level Assy I have a rule to run other rules in components. Should I change the displayed components names on the Assy Tree the rules loose reference. So they wouldn’t run.
PANEL ASSY 2ndS:1 is a component with a rule in it "Tie Rods & Washer Plates 2ndS"
This is the default Browser Nod Name and it could also be
- AAA-0111 --> Part No
- PANEL ASSY 2ndS.iam:1 --> File name
- PANEL ASSY 2ndS:1 --> Default
I suppose this can be avoided by not changing from Default, but what an inconvenience should we have to.Unless if there is an other way to reference our components in iLogic?
I just download the AutoDesk Inventor 2012 but I didn't use this software before. I just download an example and refer youtube to create my own parts. But when I place all parts together, i.e. assemble all parts, I find that the parts are not looks good because the size either too big or too small. I try the whole afternoon but I still can't find the way to change the size of an individual component.
I was wondering if there was a way to suppress a component in the main assembly, and keep it from appearing in the parts list whenever I create one in the idw. environment? I am creating an iassembly, and generating different file versions from the main assembly in my table. In order for me to create different versions off of this main assembly, it is required that I suppress certain sub assemblies or components. I can't get the suppressed componenets to not show up in my parts list when I create it. I turned off enabled and visibility and it still appears in the BOM. Creating a different level of detail doesn't even solve this.
I know I can manually not have it show up in the BOM, but it becomes very time consuming trying to make certain rows not appear in the BOM table.
I have an iassembly model with iparts in it. I am trying to make one absolutely complete model rather than have several models with redundant parts in it. For example having the full assembly and making a Top Line Drawing from that, but then also making a drawing from the individual components.
So for example I have a Top Line assembly drawing with a tank with all the fittings, gauges, and instrument panels shown. Then I would want to make another set of drawings showing the tank itself, fittings, gauges, and the instrument panel. My main issue is with the tank drawing; the tank drawing is supposed to be simply the tank so I would need to remove the fittings, gauges, instrument panel etc.
I would like to know if there is a way to "Hide" or "Supress" the components that I do not need for a particular drawing without taking them out of the model; yet at the same time removing it from the BOM because they wont be necessary at this level.
I have an assembly that is nearly completed. I am trying to change the lengths of two side rails (arrow pointing to one of them). On each end of these rails are several components that have been constrained to the rails.
When I change the length of the rails, many of the constraints show errors. I expected that all components would move with the ends of the rails as they are shortened since that is where they were constrained, but this has not happened.
The constraint recovery tool has not been useful to me.
I have an i assembly with some lengthy and unique ilogic to control what parts are included / excluded based on user inputs in a form. To begin, the program includes all components, and then excludes the ones that aren't needed. This is basically, briefly what the first part of that looks like:
For Each oCompOcc In oCompDef.Occurrences i=i+1 'Include all currently excluded components If oCompOcc.Excluded=True Then oAssObj=oCompDef.Occurrences.Item(i) oDoc.SelectSet.Select(oAssObj) ThisApplication.CommandManager.ControlDefinitions.Item("ExcludeCtxCmd").Execute()InventorVb.DocumentUpdate() Else End If Next InventorVb.DocumentUpdate()
So this works just fine, mostly. I run into an issue with the component occurrences that are within patterns (I have 2 patterns - 1 circular and 1 rectangular). This code will "Include" all occurrences inside an "Excluded" pattern, but the pattern itself remains "Excluded". In other words, in the browser, the pattern name appears greyed out and crossed out, but all the elements and the components within them appear "alive", so to speak. But the BOM indicates a Qty. of ZERO for these components since the pattern that.
I can toggle include / exclude of patterns using the same method:
I have a simple code below trying to iterate through all the assembly component and copy the iProperties > Occurrece Name (i.e. "Part1:1") and paste it to iProperties > Project tab > Part Number field for each individual part in assembly.
' set a reference to the assembly component definintion. ' This assumes an assembly document is open. Dim oAsmCompDef As AssemblyComponentDefinition oAsmCompDef = ThisApplication.ActiveDocument.ComponentDefinition
'Iterate through all of the occurrences Dim oOccurrence As ComponentOccurrence For Each oOccurrence In oAsmCompDef.Occurrences Dim oName As String oName = oOccurrence.Name iProperties.Value(oOccurrence.Name, "Project", "Part Number") = oName MessageBox.Show(oOccurrence.Name, "iLogic") Next
The Debug message shows the correct output for every iteration, but when I check each part's properties they all have the Occurrence Name of the last part in the aseembly.
I have geometry not updating after replacing a component in an assembly.
I have drawn part A and in the assembly environment I have projected cut edges on a XY Plane in a 2D Sketch.
After replacing component A in the assembly with part B (not identical but very close) i was expecting the projected geometry to update. But it doesn't. The "local update" button is greyed out in assembly mode. also the Rebuild command does not seem to update the projected geometry.
I can see the new 3d shape and the old projected geometry. How to get the projected geometry to update?
I want to import a component consisting of about 50 different parts into an assembly that is about 300 different parts.
When I "place as component" into the assembly it imports into the assembly fine as a component.
When I make an exploded view I can split the component into seperate parts but when I make an .idw file the parts list just shows the component as one part number.
I would like to the .idw to show all of the parts that are in the component separately.
Is there some kind of expansion menu or do I have to re-make the component in the assembly file?
I am trying to switch component rows within my assembly file but can't seem to do so. All of the files are generated, yet and still I am not able to change component rows based on user parameters. Files are attached.
My code is as follow in Ilogic
MultiValue.Setlist("Material", "1", "2") If Material = "2" iPart.ChangeRow("RING", "RING-03:1") End If
I need to use parameters of a part in an assembly. How to do this? Do i need to define a rule? How is this done?
Can i do it without using an Excel sheet as a parameter source for both the assembly and the part? The target is to have inventor update an array of assets as soon as the width of a part is changed whether in Excel or in the Factory properties of the asset.
I have a master layout (ipt), from which I've created derived parts, that get put together in an assembly. I'm able to pass parameters from my master part to the derived parts, but I don't seem to be able to pass parameters from the derived parts to the assembly. Is this possible?