Jump to content


  • Posts

  • Joined

  • Last visited

Everything posted by MaxStudio

  1. Thanks for your reply line-weight. I'm curious and scared of solution 1 (with a new set of problems) Solution 2 might work, I'll try it out but, I'm not sure how doors and windows will interact with multiple walls stacked on the same layer. (in this case there is no window or door so it might work)
  2. ps don't mind the gray portion of the wall that is beyond the roof that is another wall that has nothing to do with this situation.
  3. So I've been playing around with this more and I've come up with a solution that seems to work. It is best to have a class that is hidden when in plan view and visible when in elevation or perspective view. Once the portion of the wall below the roof was drawn, on the 2nd floor walls layer, I needed to offset the bottom of the wall. (the tricky part, for me, was that I needed to get the entire wall below the roof) so I offset the bottom about 36" and only made the wall height 6". I then fit the wall object to the roof object and it made the proper connection. I then needed to return the bottom of the wall to it's original position. (I wasn't sure how the model would handle this because the original bottom position of the wall was above the lowest portion of my roof intersection.) It worked and I'm happy but I guess there is no other way around the hidden class.
  4. I'm not sure that will work. I think the problem is that if I change one symbol I change all of them. The class the symbol is on won't pass through to the objects within the symbol. I'll keep playing around see if I can figure something out. Thanks James! Derek
  5. I draw my existing conditions and use 2d symbols for things like sinks, vanities, etc... The symbol is originally created on the 'None" class. I set the symbol line type to "by class" but when I move it to the demo class the line type doesn't change. In order to get the line type to change I have to enter the symbol and change the line type of each of the objects contained within the symbol to "by class" and put all of those objects within the symbol on the demolition class. That will work although, it then changes all of my existing symbols (which are not to be on the demolition plan). How do you accomplish this without having to create a new demolition symbol for each symbol? Thanks, Derek
  6. Hello, I'm looking for the best practice for the following situation. I have two different sidings on the exterior of the house (clapboard on the first floor and shingle on the second floor) There is a portion of the second floor shingle wall that is below a first floor roof. I do not want this portion of the wall to show up on the second floor plan. (see photo 1-I added the dotted lines to show the first floor wall below the roof) In my attached image (photo 2) you can see that I fit the first floor walls to the roof object. Unfortunately, that leaves me with clapboard siding in an area where there should be shingle siding. My current solution is to create a second hidden class that reflects the properties of the second floor walls. I keep the class 'on' in elevation and perspective views but 'off' on plan views. Is there a better solution or easier solution to this problem? bonus question. I have two roofs that line up on the inner corner but do not connect on the outer corner any solutions? (see photo 3) And thank you for your help Derek
  7. Does anyone know of any good tutorials for creating a wall sconces or pendant light fixtures that renders properly? Thank you.
  8. Hi Everyone, Using Vectorworks 2016 on Mac. Quick Question. I extruded an object from the right viewport. Unfortunately, now when I texture the object, the top and bottom are considered the "sides" and the sides are considered the "top & bottom". Is there a way to reorient the axis of an extruded object so that I can make the sides the top and bottom and the top and bottom the sides? Thanks!
  9. I know there is probably an easy answer to this question but, I just can't seem to figure it out. I have a custom triple double-hung window that I have created with the Vectorworks window tool. The center window is 40" wide and the side windows are 18" wide. I want 3 vertical muntin bars in the center window and 1 vertical muntin bar in the side windows but, it seems I can only have one or the other. (Either 3 vertical bars in all windows or only 1 vertical bar in all windows). What am I missing? Thanks Derek
  10. I'm trying to create a box bay with a window. I've created the box bay using walls and offset the base of the walls to the appropriate height. unfortunately, once I offset the base of the box bay walls a hole remains in the main wall of the house. What is the best way to go about creating a box bay like this? Thanks, Derek
  11. I'll keep my Ho-Ho-Ho Hopes up
  12. It's interesting because it seems like it is a problem that has been plaguing the program for quite some time. I wonder if there is anyone at vectorworks working on a solution to this problem.
  13. I've also created a 3d tapered object and used the "Add 3d Object to Slab" menu item to attach the object to the slab. That did attach the 3d object to the slab but, then the horizontal lines of the slab became visible too. It's almost like the slab became part of the 3d object and inherited it's properties instead of the 3d object becoming part of the slab. Hi Boh, What layer do you put the Solid Chimney Object on? I was able to get it to work but, I had to do a little extra work. I will list my process below: I did what you said and created the Chimney as 1 solid object. I'm going to call this object "Chimney_Elevation_Object" I put Chimney_Elevation_Object on the design layer "Slab-1" (that allows me to show the chimney in elevation but, not on any of the plans because the Slab-1 layer is set to invisible on my plan views) I still needed the walls of the chimney to show in plan so I created a new class called "Wall-Chimney" I then went to the First Floor Walls design layer and created the walls for the wider portion of the chimney and put those walls on the Wall-Chimney class. I then went to the Second Floor Walls design layer and created the walls for the narrower portion of the chimney and also put those walls on the Wall-Chimney class. Finally, I set the visibility for the Wall-Chimney class to visible on the plans and invisible on the elevations. See Pictures 3,4 & 5 Below. Unfortunately, there is a little bit of double work that needs to be done to accomplish this outcome. In the future, if I change the chimney in plan, I will need to remember to also change the solid Chimney_Elevation_Object. I will also have to create some more classes for demo and new chimney walls. Thanks for your help and if anyone else has any further solutions I would love to hear. Derek
  14. Hello Everyone, I'm trying to create a chimney that tapers. (see picture 2) I've drawn the walls, which represent the wider portion, on the first floor and the walls, that represent the more narrow section, on the second floor. I need to create the transition piece between (see picture 1). I want the transition piece to perform much like a slab so that the horizontal lines are invisible when rendering Hidden line. My questions are: 1. What is the best way to go about creating this piece? 2. I could use a slab but, is there a way to taper a slab? 3. I tried creating a polygon, performed and extrude and tapered it. And while that got me the shape I was looking for it still has the horizontal lines in Hidden Line mode. Is there a way to hide the horizontal lines? Thanks Derek
  15. I have two questions. Once I make the xml file where do i save it? the same plugin folder that the vso file is in? also I've never encrypted a plugin using the EncryptVSPluginFilePath is there any documentation which explains this process? I wonder why there isn't just a button in the Plugin Manager that simply says "ENCRYPT PLUGIN"? ... I had to switch my workspace but found a pulldown for Encrypt Scripts but, it doesn't allow me to select a .vso file. I'm very confused on how to accomplish this encryption.
  16. I created a plugin object using python. The main code was pasted into the script editor via the plugin manager. I compiled the script and the plugin item works as it should. Now I would like to lock the script. I'm on a mac and recently made the jump from Vectorworks 2008 to 2016. In the past when creating a vector script I could lock it by holding down 'command' + 'option' + 'shift' + 'caps lock' (it was important that all external files had the extension .px) Now i'm in 2016 and scripting with Python. I only have 1 other file in addition to "import vs", which is, "import shapes" when i compile my script (shapes.py). It finds this file via the scripts options/environment paths. How do I go about locking or encrypting this plugin object? also, I do have a __init__.py file included in the folder that contains shapes.py
  17. Ok thanks Raymond I will try! Thank you Raymond that worked! I appreciate the response!
  18. I've eliminated the vs.GetCustomObjectInfo(objname,oh,rh,wh) and just used vs.SetParameterVisibility(handle, 'parametername', FALSE) I set the object handle to zero vs.SetParameterVisibility(0, 'parametername', FALSE) I want to use a pulldown to set the visibility to true: number=vs.Pnumber if number == "2": vs.SetParameterVisibility(0, 'parametername', True ) but I'm getting the following error: Error: Invalid callback function parameter type. Parameter index= 0 name=inPlugin File "<string>", line 38, in <module> File "<string>", line 1, in <module> below is the actual code: import vs import shapes number=vs.Pnumber shape01=vs.Pshape01 shape02=vs.Pshape02 shape03=vs.Pshape03 xstart=0 vs.SetParameterVisibility(0, 'shape01', False ) vs.SetParameterVisibility(0, 'shape02', False ) vs.SetParameterVisibility(0, 'shape03', False ) if number == "2": vs.SetParameterVisibility(0, 'shape01', True ) vs.SetParameterVisibility(0, 'shape02', True ) if number == "3": vs.SetParameterVisibility(0, 'shape01', True ) vs.SetParameterVisibility(0, 'shape02', True ) vs.SetParameterVisibility(0, 'shape03', True )
  19. I have not assigned a value to objname. I've created a plugin object and I need to reference and object handle to set the visibilities of the parameter. how do i acquire or assign these? I thought using the following: vs.GetCustomObjectInfo(objname,oh,rh,wh) would have acquired and assigned these for me
  20. I'm trying to set parameter visibility in the object info panel. In the old vector script I would retrieve the custom object information as follows: result:= GetCustomObjectInfo(objname,oh,rh,wh); I would then set the visibility of the parameter as follows: SetParameterVisibility(oh,'parametername',FALSE); In python I am trying to accomplish the same thing. I've tried the following: result = vs.GetCustomObjectInfo(objname,oh,rh,wh) and then I attempted to set the visibility as follows: vs.SetParameterVisibility(oh, 'parametername', FALSE) when i run the script I get the following error: NameError: name 'objname' is not defined Does anyone know how to accomplish this using best practice? Thanks, Derek
  21. Ok thanks guys, I downloaded PyCharm I will check it out
  22. In the past I have run into a problem where the scripting window limits the amount of code I can put in a plugin. That lead me to start using 'Includes" after which, I was no longer limited. The problem is that some of my codes end up being very long and I do not like scrolling through a ton of code just to find what I'm working on. For example, If I have a code that generates 10 types of doors. In the past I would generate variables for door width/height/wall thickness. (i would consider those to be global variables) All of the door types would use those variables. But not all of the doors would be the same. Some would be solid, some would be glass and some would be paneled. To create these individual door types I would have a set of Local Variables for each. In the past i would create a main include file that sets global attributes and draws global objects. When the user selected a door type the corresponding include file would load to draw the selected door. Having the separate "include" file would allow me to work on a simple code to generate each individual door type. I wouldn't need to work on one large file that includes all 10 doors. When the code was complete I would lock it within vectorworks so that it would run as a single plugin file. I'm having a little trouble understanding the best way to accomplish this with python. I'm not a paid programmer and Im learning as I go. I'm trying to get a better grip on python as we are moving from Vectorworks 2008 to 2016. That being said, I find it much easier to comprehend looking at small pieces of code rather than a monster.
  23. I like to deconstruct my larger more complicated scripts into smaller files. It helps me stay organized. I'm trying to get imported functions to use global variables that I have created but, it's not working the way I like and I'm not sure why. I have a main script that defines the global variables. The main script also imports demo.py and calls the function draw. The demo.py script is basically an if/else test. I've imported another file named shapes.py which has functions to draw shapes. -If the global variable 'w' is less than 6 call function myrectangle() from shapes.py -If the global variable 'w' is greater than 6 call function myoval() from shapes.py -if the global variable 'w' is equal to 6 print "Hello World" in a Alert Box. When i try to run i get: NameError: global name 'x' is not defined. I thought that if I had global variables defined in the main script i would be able to use them in the imported functions. Am I doing something wrong? main.py import vs import demo w=vs.PLineLength h=vs.PBoxWidth x = 0 y = 0 y = y-h/2 demo.draw() demo.py import vs import shapes def draw(): vs.PenSize(2); if w < 6: shapes.myrectangle() elif w > 6: shapes.myoval() elif w == 6: vs.AlrtDialog('Hello world.') shapes.py import vs def myrectangle(): vs.Rect(x,y, x+w,y+h) def myoval(): vs.Oval(x,y, x+w,y+h)
  • Create New...