Jump to content

All Activity

This stream auto-updates     

  1. Past hour
  2. Anyone else had this issue? I didn't set any shutters within VWX itself, as I wanted to wait and do it within Vision. But, when I brought up the channel and software console, the shutters aren't responding at all. Also, for some reason, the unfiltered lights are appearing deep red. If I connect to an actual console over sACN, I can bring them up and down to make them change the color temp back to normal, but then they will often overcorrect and go cooler than an actual incandescent. This seems SUPER buggy. Does anyone have any advice?? Thanks! Greg
  3. I have a plan from last year I need to update prices on. Can I do it directly from the worksheet in Viewport or do I need to update on the plan itself?
  4. Sadly this still happens with data tags. It's a different project and a different use case. Very frustrating, because we can't reproduce it and this time it's a project file. So we have to account for even more users. 😞
  5. Today
  6. You're talking about hybrid symbols, which contain both a 3D component + a 2D component. Have a look at these guides by @Andy Broomell H-ImportingSketchUpEntourage.pdf E-HybridSymbols.pdf
  7. Apologies for the couple of question in 1 post but I think that they go together. All for VW 2019 If I want to use a 3D image files such as those on Sketchup3D warehouse for my Vectorworks drawings how do I create a 'resource' to reuse including a 2D image so that it is visible in top plan? What formats can I use? Do I duplicate something from resource manager and then create an image prop for use in the 3D element as we do for plants? Or, do I create a 2D symbol and attach the suppliers images to the 3D element? If there is a video somewhere please send me the link. I can only find videos that deal with differing elements - image props etc. Thanks Justine Wood
  8. @isyme In my horizontal section viewport 2D objects can be rendered sketch by checking "sketch hidden line results" in "foreground render settings". 3D objects cannot. Which seems logical...
  9. Thanks Jesse. Im starting to see more possible applications for this beyond modelling up basic kitchen equipment. We often get 2d cad bldg drawings from which we need to create a 3D model. Chimneys, extract flues, roof plant are a few of the things We regularly have to model from solids. I’m looking forward to having a play with tmrw! cheers
  10. I just tried to download your picture, and created a Image prop in a blank file. It worked at my end Maybe its better to have the imagefile on the computer? (while you are creating the Imagprop ) Imageprop.vwx
  11. Hey, I'm trying to make whatever that can display the specific Y position of that whatever based on hoist origin. It could be a data tag, a symbol it does not really matter. I would like it to update its position if I move the object or origin. I made one using a data tag that uses insertion point Y, and I can not figure out how to get it to base its position from the hoist origin. The general function is to give other elements other than hoists its position in the drawing. Stage edges, trusses, etc... Is this possible?
  12. In metric it creates an error: Also: would love to be able to add roofs (2 surfaces along longest side)
  13. I too have spent many many hours developing my own resources and systems, but if I consider how much I have benefited from other peoples generosity in sharing both what they know and what they have then I have no qualms sharing whatever I have. What goes round comes around and overall makes for positive outcomes. cheers
  14. I am attempting to create a tree 3D image using the attached png which I have bought and downloaded. When I select create image prop in Model, and import and elect the image nothing happens. It doesn't open up the screen allowing me to create transparencies etc. I have the image saved outside of the file, on my iCloud Drive. Any ideas as I need this image today? I have VW 2019 Many thanks
  15. Hi all, is it possible to do the following via marionette/script: - device generated via connectcad sits on design layer: media room - the device name is: projector - the script collects all devices with the same name (for example:projector) and adds the design layer name to the device name, then it numbers all these devices - result: projector-media room-01 is this possible or out of reach? i am a newbie to all aspects of scripting and marionette but willing to learn...
  16. Good morning. Did something change in regards to color rendering between Vision 2019 and Vision 2021? A Source 4 with no color is reading super amber and not at all realistic. Screen capture from Vision 2021 Screen Capture from Vision 2019. Though still a little pink, this is much closer to what a N/C Source 4 10degree looks like
  17. Thanks all for your replies. It was a question because I've spent quite a lot of time designing my own resources so giving them to others will obviously result in them being used elsewhere but I suppose that's the rub if you're self employed. 🙂
  18. Thank You @Antonio Landsberger That is what I'm looking for. @Pat Stanford I will be placing a manual with the script file that will hopefully warn my colleagues about not "fooling around" with the script 🙂
  19. Hi, Is there a way to extract the individual segments from a polyline in Marionette so that it has an output as a list of lines/segments?
  20. Will you please just provide an effing off-switch? Put an off switch on it. Come on. Let me kill the abomination. OOOFFFFF SSWWIIITTCCHHH Comprende?
  21. Hello @techdef, Is your Plot Date Format set to any of the Auto options? If so, could you send me a sample test file showing the issue? Best Regards, Nikolay Zhelyazkov
  22. Yes you just need to move the drawing geometry closer to the 'internal origin' (the blue reticle or crosshairs) to avoid performance issues. You do this using the 'Geolocate' tool in the GIS tool set. Use it in the 'Locate' mode (first mode) + click the cursor somewhere on or close to where you're working + this is where the internal origin will be relocated to.
  23. Thanks a lot @Benson Shaw, @jeff prince and @Tom W.! I often think choosing the right, or "smartest" tool is a bit tricky but now I have some more tools to try with these shapes 🙂 I thought Vectorworks would be able to work at the correct location, but am I doing it wrong? Well, I like when I see the X and Y posisions at 65... and 15... since that's where we are, but is it possible to also create some kind of local 0 to increase file performance?
  24. I meant to warn you about it only working in Top/Plan (bounding box gets distorted in 3D views). Found the problem. VW2019 lets you extrude along a line, but VW2021 only extrudes along a NURBS curve. So I added a couple of lines to convert the line to a NURBS curve before extruding. This should also work in VW2019. PROCEDURE Ortho2Dto3D; {* Polls for plan, front, and side objects and produces simple 3D object Developed by: Jesse Cogswell Date: 4/11/2021 VW Version: 2019 Revisions: *} CONST BUFF = 6; VAR frontA,frontB,sideA,sideB:POINT; origin,trackLoc:POINT3D; width,height,depth,centerZ:REAL; plan,frontProfile,sideProfile,planObj,frontObj,sideObj:HANDLE; result:INTEGER; FUNCTION CheckObjCallback(h:HANDLE) : BOOLEAN; {Provides Callback for selecting extrude objects} VAR objType:INTEGER; BEGIN objType:=GetTypeN(h); IF((objType=3)|(objType=4)|(objType=5)|(objType=6)|(objType=13)|(objType=21)) THEN CheckObjCallback:=TRUE; END; FUNCTION CreatePlanObj(h:HANDLE; rBase,rDepth:REAL) : HANDLE; {Creates 3D object representing plan geometry} VAR tempHd:HANDLE; BEGIN tempHd:=CreateDuplicateObject(h,NIL); CreatePlanObj:=HExtrude(tempHd,rBase,rDepth); END; FUNCTION CreateFrontObj(h:HANDLE; pOrigin:POINT3D; pA,pB:POINT; rHeight,rDepth:REAL) : HANDLE; {Accepts profile information and returns Handle to 3D geometry of front subtract object} VAR pathHd,rectHd,cutHd,solidHd,objHd:HANDLE; objCtr:POINT3D; subResult:INTEGER; BEGIN {Create Path} MoveTo(pOrigin.x,pOrigin.y-(rHeight*0.5)-BUFF); LineTo(pOrigin.x,pOrigin.y+(rHeight*0.5)+BUFF); pathHd:=ConvertToNURBS(LNewObj,FALSE); Move3DObj(pathHd,0,0,(rDepth*0.5)); {Create Profile} Rect(pA.x-BUFF,pA.y+BUFF,pB.x+BUFF,pB.y-BUFF); rectHd:=LNewObj; {Extrude Cut Profiles} solidHd:=ExtrudeAlongPath(pathHd,rectHd); cutHd:=ExtrudeAlongPath(pathHd,h); DelObject(rectHd); DelObject(pathHd); subResult:=SubtractSolid(solidHd,cutHd,objHd); {Move 3D Geometry to Plan object center} Get3DCntr(objHd,objCtr.x,objCtr.y,objCtr.z); Move3DObj(objHd,0-objCtr.x+pOrigin.x,0,0-objCtr.z+(rDepth*0.5)); IF(subResult=0) THEN CreateFrontObj:=objHd; END; FUNCTION CreateSideObj(h:HANDLE; pOrigin:POINT3D; pA,pB:POINT; rWidth,rDepth:REAL) : HANDLE; {Accepts profile information and returns Handle to 3D geometry of side subtract object} VAR pathHd,rectHd,cutHd,solidHd,objHd:HANDLE; objCtr:POINT3D; subResult:INTEGER; BEGIN {Create Path} MoveTo(pOrigin.x+(rWidth*0.5)+BUFF,pOrigin.y); LineTo(pOrigin.x-(rWidth*0.5)-BUFF,pOrigin.y); pathHd:=ConvertToNURBS(LNewObj,FALSE); Move3DObj(pathHd,0,0,(rDepth*0.5)); {Create Profile} Rect(pA.x-BUFF,pA.y+BUFF,pB.x+BUFF,pB.y-BUFF); rectHd:=LNewObj; {Extrude Cut Profile} solidHd:=ExtrudeAlongPath(pathHd,rectHd); cutHd:=ExtrudeAlongPath(pathHd,h); DelObject(rectHd); DelObject(pathHd); subResult:=SubtractSolid(solidHd,cutHd,objHd); {Move 3D Geometry to Plan object center} Get3DCntr(objHd,objCtr.x,objCtr.y,objCtr.z); Move3DObj(objHd,0,0-objCtr.y+pOrigin.y,0-objCtr.z+(rDepth*0.5)); IF(subResult=0) THEN CreateSideObj:=objHd; END; BEGIN {Poll Plan object} SetTempToolHelpStr('Select Plan Object'); TrackObject(CheckObjCallback,plan,trackLoc.x,trackLoc.y,trackLoc.z); HCenter(plan,origin.x,origin.y); origin.z:=0; {Poll Front object} SetTempToolHelpStr('Select Front Object'); TrackObject(CheckObjCallback,frontProfile,trackLoc.x,trackLoc.y,trackLoc.z); {Poll Side object} SetTempToolHelpStr('Select Side Object'); TrackObject(CheckObjCallback,sideProfile,trackLoc.x,trackLoc.y,trackLoc.z); {Get bounding boxes for Front and Side} GetBBox(frontProfile,frontA.x,frontA.y,frontB.x,frontB.y); GetBBox(sideProfile,sideA.x,sideA.y,sideB.x,sideB.y); {Determine overall dimensions} width:=frontB.x-frontA.x; height:=sideB.x-sideA.x; depth:=frontA.y-frontB.y; {Create 3D Geometry} planObj:=CreatePlanObj(plan,origin.z,depth); frontObj:=CreateFrontObj(frontProfile,origin,frontA,frontB,height,depth); sideObj:=CreateSideObj(sideProfile,origin,sideA,sideB,width,depth); {Cut Objects} result:=SubtractSolid(planObj,frontObj,planObj); result:=SubtractSolid(planObj,sideObj,planObj); END; Run(Ortho2Dto3D);
  25. Wow Jesse that is pretty cool! For a script illiterate player like myself I find this sort of thing pretty amazing. So it looks like I need another idea to start my marionette journey...! I've played around with it a little and once I realised that you need to be in top/plan view to make it work it was fun knocking out a few basic 3d solids. I did manage to get it all going in vw2019 but vw2021 doesn't seem to want to play ball:
  26. Believe it or not, but I think this would be VERY complicated in Marionette. Marionette is not all that flexible and can be a bit of a nightmare to work with, though I suppose it might be possible as long as the nodes exist. But I think I was able to make this happen using Vectorscript. After running the command, it will ask you to select a Plan object, a Front object, and a Side object, in that order. These objects can be anything that can be extruded (circles, rectangles, polygons, polylines, etc). The script will extrude these along a path as well as a solid rectangle a little larger than the bounding box of the profile, then subtract these objects to create a "cutting" object for the front and side. It then subtracts these from an extrude created by the plan object. I haven't tested this with a wide variety of objects, so it might still break with something complicated, but it is worth trying out. Video of me testing it is below as well as the source code. Feel free to save it in a script palette or make it a full blown menu command. Video of me testing the tool. Windows won't capture floating palettes in screen cap video, so imagine me selecting the script from a script palette. Vectorworks Spotlight 2019 - [2D Orthographic to 3D.vwx] 2021-04-11 21-00-00.mp4 Vectorscript code. It's probably a little rough in terms of variable naming and such, but it certainly works. I also only tested it in Freedom Units, so let me know if it breaks when exposed to the logic of the Metric System. PROCEDURE Ortho2Dto3D; {* Polls for plan, front, and side objects and produces simple 3D object Developed by: Jesse Cogswell Date: 4/11/2021 VW Version: 2019 Revisions: *} CONST BUFF = 6; VAR frontA,frontB,sideA,sideB:POINT; origin,trackLoc:POINT3D; width,height,depth,centerZ:REAL; plan,frontProfile,sideProfile,planObj,frontObj,sideObj:HANDLE; result:INTEGER; FUNCTION CheckObjCallback(h:HANDLE) : BOOLEAN; {Provides Callback for selecting extrude objects} VAR objType:INTEGER; BEGIN objType:=GetTypeN(h); IF((objType=3)|(objType=4)|(objType=5)|(objType=6)|(objType=13)|(objType=21)) THEN CheckObjCallback:=TRUE; END; FUNCTION CreatePlanObj(h:HANDLE; rBase,rDepth:REAL) : HANDLE; {Creates 3D object representing plan geometry} VAR tempHd:HANDLE; BEGIN tempHd:=CreateDuplicateObject(h,NIL); CreatePlanObj:=HExtrude(tempHd,rBase,rDepth); END; FUNCTION CreateFrontObj(h:HANDLE; pOrigin:POINT3D; pA,pB:POINT; rHeight,rDepth:REAL) : HANDLE; {Accepts profile information and returns Handle to 3D geometry of front subtract object} VAR pathHd,rectHd,cutHd,solidHd,objHd:HANDLE; objCtr:POINT3D; subResult:INTEGER; BEGIN {Create Path} MoveTo(pOrigin.x,pOrigin.y-(rHeight*0.5)-BUFF); LineTo(pOrigin.x,pOrigin.y+(rHeight*0.5)+BUFF); pathHd:=LNewObj; Move3DObj(pathHd,0,0,(rDepth*0.5)); {Create Profile} Rect(pA.x-BUFF,pA.y+BUFF,pB.x+BUFF,pB.y-BUFF); rectHd:=LNewObj; {Extrude Cut Profiles} solidHd:=ExtrudeAlongPath(pathHd,rectHd); cutHd:=ExtrudeAlongPath(pathHd,h); DelObject(rectHd); DelObject(pathHd); subResult:=SubtractSolid(solidHd,cutHd,objHd); {Move 3D Geometry to Plan object center} Get3DCntr(objHd,objCtr.x,objCtr.y,objCtr.z); Move3DObj(objHd,0-objCtr.x+pOrigin.x,0,0-objCtr.z+(rDepth*0.5)); IF(subResult=0) THEN CreateFrontObj:=objHd; END; FUNCTION CreateSideObj(h:HANDLE; pOrigin:POINT3D; pA,pB:POINT; rWidth,rDepth:REAL) : HANDLE; {Accepts profile information and returns Handle to 3D geometry of side subtract object} VAR pathHd,rectHd,cutHd,solidHd,objHd:HANDLE; objCtr:POINT3D; subResult:INTEGER; BEGIN {Create Path} MoveTo(pOrigin.x+(rWidth*0.5)+BUFF,pOrigin.y); LineTo(pOrigin.x-(rWidth*0.5)-BUFF,pOrigin.y); pathHd:=LNewObj; Move3DObj(pathHd,0,0,(rDepth*0.5)); {Create Profile} Rect(pA.x-BUFF,pA.y+BUFF,pB.x+BUFF,pB.y-BUFF); rectHd:=LNewObj; {Extrude Cut Profile} solidHd:=ExtrudeAlongPath(pathHd,rectHd); cutHd:=ExtrudeAlongPath(pathHd,h); DelObject(rectHd); DelObject(pathHd); subResult:=SubtractSolid(solidHd,cutHd,objHd); {Move 3D Geometry to Plan object center} Get3DCntr(objHd,objCtr.x,objCtr.y,objCtr.z); Move3DObj(objHd,0,0-objCtr.y+pOrigin.y,0-objCtr.z+(rDepth*0.5)); IF(subResult=0) THEN CreateSideObj:=objHd; END; BEGIN {Poll Plan object} SetTempToolHelpStr('Select Plan Object'); TrackObject(CheckObjCallback,plan,trackLoc.x,trackLoc.y,trackLoc.z); HCenter(plan,origin.x,origin.y); origin.z:=0; {Poll Front object} SetTempToolHelpStr('Select Front Object'); TrackObject(CheckObjCallback,frontProfile,trackLoc.x,trackLoc.y,trackLoc.z); {Poll Side object} SetTempToolHelpStr('Select Side Object'); TrackObject(CheckObjCallback,sideProfile,trackLoc.x,trackLoc.y,trackLoc.z); {Get bounding boxes for Front and Side} GetBBox(frontProfile,frontA.x,frontA.y,frontB.x,frontB.y); GetBBox(sideProfile,sideA.x,sideA.y,sideB.x,sideB.y); {Determine overall dimensions} width:=frontB.x-frontA.x; height:=sideB.x-sideA.x; depth:=frontA.y-frontB.y; {Create 3D Geometry} planObj:=CreatePlanObj(plan,origin.z,depth); frontObj:=CreateFrontObj(frontProfile,origin,frontA,frontB,height,depth); sideObj:=CreateSideObj(sideProfile,origin,sideA,sideB,width,depth); {Cut Objects} result:=SubtractSolid(planObj,frontObj,planObj); result:=SubtractSolid(planObj,sideObj,planObj); END; Run(Ortho2Dto3D);
  27. Here is an image of some lighting symbols using more realistic lenses. These are all my proprietary symbols, however, this is easily enough achieved with spotlight symbols as well. You will need to add a class to the standard set of spotlight classes for the lenses. I perhaps suggest calling it "Lighting-lens". In each fixture you can edit the 3D component from the Resource manager. Once in the edit window, click on the body of the fixture. The body of the fixture should be grouped so double click on that to now edit inside the group. In most cases a fixture will have a physical lens in the model so you should be able to select that. Once selected, you can add a texture to it as I have done and that texture should have a glow shader included and receive its color by the object fill (see below on creating those textures). You will also want to move the lens to the "Lighting-lens" class. Then exit the group and exit the symbol. In the FILE menu, drop down to "Spotlight Preferences". Select "Lighting Devices: Classes and Color." In the middle of the resulting pane turn "Modify Lighting Device Color" ON and then select "Lighting device set by color field" which means that the lighting device will respond to the color filed in the Object Info Palette or by directly editing the lighting information for that fixture. Select "use color field for the fill color" because we are wanting to basically change the fill color of the lens object. Finally select, "Modify only geometry in the class _________________ which is where you input your personal lens class. Note that my class is specific to my workflow so that will not be something that shows up in your file. So now the color filed for that fixture will modify the lens class for that fixture and the result should show up on your lens. As to creating the textures, I just snag a screen shot of a lens that I find online and make sure it is cropped nicely. - Create a new texture - Upload your image file in the COLOR shader. VERY IMPORTANT! Make sure that under the "Filter Color" pane that select "Use Object Fill". Once you do all of the above, Spotlight will adjust the fill of the object (the lens) based on your selection of color for the fixture. When the lens class changes, it will need to change the texture as well and this is the functionality that allows that. Very useful for any number of other things as well by the way. - Under the REFLECTIVITY shader, select GLOW. I would suggest an output of at least 100%, however, much higher than that will cause your colors to bloom. You can decide wether or not you want the texture to emit light. Frankly I turn that off just to keep rendering as efficient as possible. - Set the SIZE of the texture to the. size of the actual lens you are emulating. This will save time mapping. - Lastly, MAKE SURE that under the SHADOWS pane you turn off BOTH cast and receive. The way Spotlight fixtures work, there is a light source placed back and the yoke location and it has to shine THROUGH both the fixture and the lens. If the texture is CASTING a shadow, that basically means it s like throwing a piece of sheet metal where your lens is supposed to be. Not good. I hope that helps.
  1. Load more activity

 

7150 Riverwood Drive, Columbia, Maryland 21046, USA   |   Contact Us:   410-290-5114

 

© 2018 Vectorworks, Inc. All Rights Reserved. Vectorworks, Inc. is part of the Nemetschek Group.

×
×
  • Create New...