{"id":9750,"date":"2013-09-12T23:00:00","date_gmt":"2013-09-13T06:00:00","guid":{"rendered":"https:\/\/blogs.plm.automation.siemens.com\/t5\/Solid-Edge-Blog\/Why-Would-You-Use-Virtual-Components-Part-2\/ba-p\/4465"},"modified":"2026-03-26T07:25:55","modified_gmt":"2026-03-26T11:25:55","slug":"why-would-you-use-virtual-components-part-2","status":"publish","type":"post","link":"https:\/\/blogs.sw.siemens.com\/solidedge\/why-would-you-use-virtual-components-part-2\/","title":{"rendered":"Why Would You Use Virtual Components? Part 2"},"content":{"rendered":"<p><P><FONT size=\"2\">I\u2019ve re-written this article 3 or 4 times as my understanding of Virtual Components (VC) has evolved. If you really want to understand this functionality, I recommend you do the tutorial starting <a href=\"http:\/\/support.industrysoftware.automation.siemens.com\/training\/se\/106\/en_US\/en_US\/\/selfPacedExt\/pdf\/spse01690.pdf\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">on page 3-2 of this PDF document<\/A> which is part of the Solid Edge Help.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">There are three steps in the VC process:<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<OL><br \/>\n<LI><FONT size=\"2\"><STRONG>Place Holder<\/STRONG>&#8211; parts with no files and no geometry, they exist only in the assembly Pathfinder<\/FONT><\/LI><br \/>\n<LI><FONT size=\"2\"><STRONG>Source component<\/STRONG> \u2013 Assembly layout sketch geometry is moved into place holder parts<\/FONT><\/LI><br \/>\n<LI><FONT size=\"2\"><STRONG>Pre-defined components<\/STRONG> \u2013 placed in assembly using 2D sketch, but also contains 3D data<\/FONT><\/LI><br \/>\n<\/OL><br \/>\n<P><FONT size=\"2\">You can think of these as sequential steps with the end goal of making a library of pre-defined components that can be re-used easily in projects that use similar components arranged differently. OR, you could think of these as three distinct states, each usable on its own. I think that the intention behind VC was for the place holder \u2013 source \u2013 pre-defined process to be considered a sequential set of steps to build library parts. But with a little imagination, it\u2019s not hard to come up with independent uses for each of these three states.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">I\u2019m gonna go out on a limb here and say that the ultimate goal of the VC process is to have a library of a bunch of pre-defined components that can be placed in layout sketches using 2D references (called component sketches), and then at some point \u201cturn the lights on\u201d and all the 2D turns into 3D.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><span class=\"lia-inline-image-display-wrapper lia-image-align-right\" style=\"width: 206px;\"><img decoding=\"async\" src=\"http:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/8\/2019\/09\/1-50.png\" alt=\"1.png\" title=\"1.png\" \/><\/span>Let\u2019s take this apart and look at the individual pieces \u2013 really three steps in a process \u2013 to understand the whole thing.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>Place Holder<\/STRONG><\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>&nbsp;<\/STRONG><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">When you initially start a modeling project, you can lay out the scope of the work by creating a bill of materials in the Pathfinder. This is just text within the assembly file that represents the organizational structure of the Solid Edge model. (Notice that virtual part and virtual assembly icons in the figure to the right are slightly different from regular part and assembly Pathfinder icons.) This list might use names, descriptions, or numbers. The place holders do not yet have any geometry and are not yet associated with files outside of the assembly.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The place holders can represent parts or subassemblies. You can also mix real parts with these virtual components, as you can see with the last two entries in the first image. You can also have sheet metal virtual parts, but now (starting in ST6) that you can have sheet metal features in non-sheet metal parts, I assume this is less important than it once was (VC has been around since version 16 or 17).<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">Later in the process, you can publish these place holders into real assembly and part files, and then add geometry to the parts using the sketch data brought in from the assembly layout sketch.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">This is something you might set up if you were the engineering manager, and needed to assign portions of a project to individuals. Once you have the organizational structure down like this, you can assign sub-systems or subassemblies to different people to work on.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">I started researching this functionality assuming that Solid Edge Virtual Components would be approximately equivalent to SolidWorks Virtual Components. Let\u2019s just say I was wrong. Works Virtual Components can have 3D geometry, but they only exist in the assembly, and they don\u2019t have any of the following functionality. Works does have a function called Smart Component that is similar to the pre-defined component step in the VC process.<BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>Source component<\/STRONG><\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>&nbsp;<\/STRONG><\/FONT><\/P><br \/>\n<P><span class=\"lia-inline-image-display-wrapper lia-image-align-inline\" style=\"width: 862px;\"><img decoding=\"async\" src=\"http:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/8\/2019\/09\/3-47.png\" alt=\"3.png\" title=\"3.png\" \/><\/span><FONT size=\"2\">Sometimes you start an assembly with a sketch, and then assign parts of the sketch to virtual components.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">To add part of an assembly sketch to a virtual component, make sure you\u2019re editing the sketch, right click on the VC and select Edit Definition, then select the portion of it you want to attach to the VC. The Prompt Bar should walk you through this. Then you should click to establish an origin and click again to establish an X direction, then select the plane the VC should go to (top, front or side).<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">Notice that the icons for VC with sketches (Top Plate) are slightly different than those without sketches. The Top Plate is a VC that contains a sketch. The Solid Edge Help documentation refers to a VC in this state as a \u201csource part\u201d.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>Pre-defined components<\/STRONG><\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>&nbsp;<\/STRONG><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">In order for an existing part to be used as a virtual component, the part must have 3D geometry plus at least one sketch representing the part which will allow you to place it using mating 2D data in the assembly layout. The parts are used as if they were library parts, and the 2D is used to place\/locate the part like a sketch block. The Solid Edge Help refers to VC parts in this state as \u201cpre-defined\u201d components.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">If you were going to lay out machines on the shop floor, and you already had models of your machines, this is the method you would use. You would start an assembly, create a layout sketch of your shop floor area, use the virtual component tools to place 2D sketches from the library, and then later publish the virtual components to turn on the 3<\/FONT><FONT size=\"2\"><span class=\"lia-inline-image-display-wrapper lia-image-align-right\" style=\"width: 399px;\"><img decoding=\"async\" src=\"http:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/8\/2019\/09\/4-33.png\" alt=\"4.png\" title=\"4.png\" \/><\/span><\/FONT><FONT size=\"2\">D. (To the right is a graphic from the Help documentation showing the various icons used for Virtual Components.)<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The Help also shows the basic workflow for virtual components as this:<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">\u2022 Define the virtual components you need.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">\u2022 Add existing documents to the virtual assembly structure.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">\u2022 Assign 2D geometry to individual virtual components.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">\u2022 Position virtual components.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">\u2022 Publish virtual components.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>Positioning Virtual Components<\/STRONG><\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>&nbsp;<\/STRONG><\/FONT><\/P><br \/>\n<DIV><br \/>\n<P><FONT size=\"2\">A classic VC application would be positioning equipment in a factory layout. It would be like using blocks in AutoCAD or little cutout pictures of furniture as you try to layout your office.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">===========================================================<BR \/><\/FONT><\/P><br \/>\n<\/DIV><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">Ok, I realize that\u2019s all clear as mud. Let\u2019s start over again and approach this differently.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><span class=\"lia-inline-image-display-wrapper lia-image-align-right\" style=\"width: 345px;\"><img decoding=\"async\" src=\"http:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/8\/2019\/09\/6-29.png\" alt=\"6.png\" title=\"6.png\" \/><\/span>Virtual Components is a method you can use to locate pre-existing parts or sub-assemblies which contain special \u201ccomponent sketches\u201d into an assembly which contains a layout sketch.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">I think part of the reason that people get so confused about this topic is that all of the examples are circular \u2013 you start from an assembly, create the VC from that assembly, and then put those parts back into the original assembly. This workflow doesn\u2019t make any sense, and you wouldn\u2019t use it on a real project.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The examples shown in the Help are also trying to talk about <STRONG><EM>making<\/EM><\/STRONG> VC and <STRONG><EM>placing<\/EM><\/STRONG> VC as if they are part of one continuous process. But they aren\u2019t, they are two separate processes. This is a very difficult topic to get your head around. I can\u2019t imagine being one of the folks writing the initial Help documentation when no one had ever really used this stuff.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<span class=\"lia-inline-image-display-wrapper lia-image-align-inline\" style=\"width: 718px;\"><img decoding=\"async\" src=\"http:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/8\/2019\/09\/7-20.png\" alt=\"7.png\" title=\"7.png\" \/><\/span><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The Structural Editor interface is a beautiful thing on its own, and it can be used for totally unrelated purposes independent from the rest of the VC process. It is also used when building the assembly from pre-defined parts.<BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The Help examples should really start by showing how to create these special VC library components from existing solid models. This should include identifying connection points, adding the component images (2D drawing view visual) to represent the 3D part.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">Next, the examples should show you using a 2D workflow to place the VC into an assembly layout sketch, and publish the parts with 2D view to 3D view.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG><BR \/>Terminology<\/STRONG><BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">Part of what has been confusing for me is that some terms are used for multiple purposes. For example, &#8220;Publish&#8221; can mean taking the text BOM in the Pathfinder and making real external part and assembly files from it. &#8220;Publish&#8221; can also mean taking real parts and assemblies (pre-defined components) and changing them from 2D view to 3D view. These two actions are very different and might benefit from having different terms. <BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The term &#8220;Virtual Component&#8221; is also used in multiple ways. It is used to represent all three states in the process &#8211; place holders, source components, and pre-defined components. This I think adds to the confusion. To me, the &#8220;virtual&#8221; part of this process is the first step &#8211; the place holder. <BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">I&#8217;m not sure where the &#8220;Zero-D&#8221; terminology comes from. You&#8217;ve clearly got the distinction between 2D and 3D. The place holder state might be considered 0D, becuase it&#8217;s just a name with zero geometry. That leaves us skipping over 1D, but then I guess naming schemes for CAD tools don&#8217;t really have to be totally rigorous. <BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>What Is It?<\/STRONG><BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The Virtual Component process may suffer from wanting to do too much at once. It&#8217;s hard to identify because it covers so much ground. Breaking it up might make it easier to understand.<BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The Place Holder idea I think should be called Virtual Components on its own. Changing virtual to real on a selective basis (and showing VC on draft parts lists) really opens up new frontiers.<BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">The Source Component might be re-branded as a method to migrate assembly sketch data into parts, in which case the word &#8220;source&#8221; would be backwards, because the assembly would be the source and the component would be the target or recipient.<BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">Pre-defined component I would rename to somehow include the word &#8220;Library&#8221;, which might help to explain what it does. Maybe &#8220;magnetic library component&#8221; because you snap it into place using the sketch entities.<BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>Summary<\/STRONG><\/FONT><\/P><br \/>\n<P><FONT size=\"2\"><STRONG>&nbsp;<\/STRONG><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">So, if anyone is still reading, this is what you\u2019ve come here to hear. Is this Virtual Component functionality worth your time? After talking to the guy who came up with this functionality, it seems clear that there is a lot more he wanted to do with it. I think there is a lot of potential that they weren\u2019t able to implement the first time around. But let\u2019s just talk about today.<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">If you have a design process that could use an assembly layout sketch, and you re-use the same parts frequently (like putting electronic components on a circuit board), VC is something you should investigate. <FONT size=\"2\">I think it will accelerate this process, and give you a way to display the library parts with a lighter weight display.<\/FONT><BR \/><\/FONT><\/P><br \/>\n<P><FONT size=\"2\">&nbsp;<\/FONT><\/P><br \/>\n<P><FONT size=\"2\">If you need to structure large modeling projects without actually making parts and subassemblies, then the Structural Editor interface is something you should investigate. I really like the method of creating parts lists without external references or geometry, and editing the overall structure in that state, only publishing the parts list to CAD files once the structure is establishded.<BR \/><\/FONT><\/P><\/p>\n<p><P><FONT size=\"2\">&nbsp;<\/FONT><\/P><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I\u2019ve re-written this article 3 or 4 times as my understanding of Virtual Components (VC) has evolved. If you really want to understand this functionality, I recommend you do the tutorial starting on &#8230;<\/p>\n","protected":false},"author":61781,"featured_media":9767,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spanish_translation":"","french_translation":"","german_translation":"","italian_translation":"","polish_translation":"","japanese_translation":"","chinese_translation":"","footnotes":""},"categories":[1,96],"tags":[],"industry":[],"product":[],"coauthors":[],"class_list":["post-9750","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news","category-tips-tricks"],"featured_image_url":"https:\/\/blogs.sw.siemens.com\/wp-content\/uploads\/sites\/8\/2019\/09\/7-20.png","_links":{"self":[{"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/posts\/9750","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/users\/61781"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/comments?post=9750"}],"version-history":[{"count":7,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/posts\/9750\/revisions"}],"predecessor-version":[{"id":9768,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/posts\/9750\/revisions\/9768"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/media\/9767"}],"wp:attachment":[{"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/media?parent=9750"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/categories?post=9750"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/tags?post=9750"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/industry?post=9750"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/product?post=9750"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/solidedge\/wp-json\/wp\/v2\/coauthors?post=9750"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}