Jump to content


  • Posts

  • Joined

  • Last visited


580 Spectacular

Personal Information

  • Location

Recent Profile Visitors

12,897 profile views
  1. hi @raouls For me it works, when the option is ON. For you it works when this option is off. What i observed is the following: 1. I have the main Window on the external screen, second screen is internal display of mac book 2. Vectorworks is startet on the external screen 3. If The Vectorworks border nearer than 3 cm on the screen border where the internal display is arranged i have epic lags for different actions. Also other Things seems to get slow (Finder) 4. If i drag the VW Window away from the border it is getting fast as expected 5. If i turn ON (Screens uses different spaces) it also works as expected and i can work with a miximized Vectorworks Window So i am little puzzled. I i update my OS, it looks like, that i have to switch OFF the Option again.
  2. Hi @raouls I wonder, it that option on your spaces settings (print screen german version above) was on or off?
  3. Hello I got a new MacBook Pro m3 end last year. I have sonoma 14.3. After setup my new system i had a short time of very big frustration because the performance was not as i excpected. Slow and epic lags (4 seconds or more and juddery).Also other things worked laggy like text editor or Filemaker. But there i am not so sensible. I think those was lags maybe another user could would take as "normal" and ignore it but i compared to my 2018 intel mac it was slower. On the internal Monitor everything was fast very fast and smooth. Also with a new user (which is often the workflow to test if it is something related to settings of the system) I found the option "screens uses different spaces" (which is translated from my german version. Do not know, if this is the exact name of the option in english too) which was turned off. After switching it on (which does make not difference for me to work) it is the best performance i ever dreamed of and very stable. Maybe can you look at that option @Dagny? I fellow just updated his intel Mac on 14.5 and have issues. The other fellows with a Apple silicon not issues after updating on 14.5 So personally i will stay on 14.3 till i can take the risk of something do not work anymore.
  4. Took a quick look I think, it is not the Marionette Network or the code inside the Marionette that produces the crash from my sight. It is the PIO which crashes by handling it in the script. I can see a crash by duplicate and move with alt-key and by edit the script. No crash with a Version, that not contains the PIO you insert in the script. That indicates, that the PIO you use inside script is crashing. Also not crash in 2024 (but maybe still an issue). Some Points that i saw: 1. Insert PIO then delete after The strategy is, to insert a PIO which has the same size as the segment of a polygon. If a Bool is 0 then delete the PIO. So you insert the PIO, set Bool to 0 and then after insertion delete PIO. Also i see, that the text you insert is not deleted in that case what would result in async text and PIO. Better would be not insert Bool is 0. Also then you have to filter the rest of the network also. 2. Writing to the record "Korpusmöbel - Objektinfo" Which is a read-only record in my opinion. Or minimum will be overwritten by the PIO itself. Maybe it works but still something risky. 3. Crash No idea what exactly produces a crash. Definitely no crash without PIO if i deactivate the symbol node. Also no crash, running the network not as a PIO Node just as a Network. The used cabined PIO may not be designed to exist inside Marionettes or other PIOs. That's maybe the source of the crashes. However i would 2024 give a try and skip 2023. Because there i can see no crash.
  5. The Script was made, screenplane planar objects was still a standard. it would still work with grouped screenplane objects. It seems, that the dup-container node puts screenplane planar objects on the 2D representation of the PlugIn. And grouped layerplane planar objects were putted on the 3D component of the plugIn. If we switch on top view we can see the groupes. Thanks for sharing that issue.
  6. Hello Which Version you would need? Regards Dominique
  7. It seems to be possible also by deleting with the selection state. So far it seems to be the best option. vs.DeleteObjs()
  8. vs.DoMenuTextByName('Clear',0) OK, this would delete the Original PIO. But i am not feeling good by using a DoMenuText in this situation.
  9. Hello I have a PIO with Button-Widgets. One of them should convert the PIO in another PIO and back. Is it possible to delete the PIO with the Button at all? elif theButton == cButton6: if replace_object(): vs.DSelectAll() vs.SetSelect(GlobalValues.pio_handle) vs.AlertInform('Press delete after action to delete original object', '','') #This would work so far vs.DelObject(GlobalValues.pio_handle) #This wont work (and if it would work i think it may result in a crash?)
  10. Should still work in 2024 (tested on mac 2024 Sonoma) 1. Select Excel File (I use Version 1.0.4 from xlsx) By clicking the Button of the Pick File Node. But if this was wrong it would throw an error message. Maybe to prevent path issues copy on desktop 2. Sheet Name input. This should match to the sheet name in the excel file. But if this was wrong it would also work by taking the first sheet name. 3. Check "Confuguration Dialog" Anyway, if input of the xls import was wrong it would throw also an error. If just nothing happens, the creation of space maybe fails. The reason maybe could be there is no area value or the area value was not returnet on output. column1 is imported without area not space. Also click the debug method to see, how many areas are outputed. It is normal we have more field values and values than areas. Because the field and values repeat because to match the set Record Field Node. If we have 3 columns it return double fields as area outputs. If we have 5 columns it returns 4 times more fields than area outputs etc.
  11. This are the options: 1. Saving/having an external (excel) list and make it fits to the input list of the Marionette. In Excel we can use formulas to have a list and a second sheet whitch grabs the list just for the needed columns. Then import the external list directly into the worksheet inside of Vectorworks. 2. If you are using interiorcad, you can configure a cutting list export, which fits to the needs and then follow step one 3. There is an internal list you could define with interiorcad which writes directly to a worksheet 4. Copy/paste can be tricky, because pasting in a worksheet may fail because you had to activate exactly the range of the pasted list first, which is hard. So import is the better option. 5. At least it could be an option to make (small) adaptions to the script so that it reads the needed columns automatically of any list. Or even directly for external file more even directly from part out of the drawing without doing any export/ import steps. I think the simplest way is to export to excel, then delete the unwanted columns and import into the Worksheet with the worksheet menu. That brings me to the idea to maybe make an example which directly reads one of the standard cutting list formats of interiorcad.
  12. I think the column "Drehbar" was never implemented (In fact it had no impact if i write there 0 or 1 it just took the checkbox "Rotation erlauben" which was a global option for all materials). I improved the Script with Version 1.0.4 and now it reads the column as soon as i checked the checkbox "Rotation erlauben". This setting will take care of the column "Drehbar" (Rotateable)
  13. Hi Did not looked into your code details because i keep that theme for a time from my brane. I think the general we can take an objects entity matrix and set that entity matrix to another object. With Set- and get Entity Matrix. This is not really hard. What was always the point is, that having some points in 3D which defines a plane transferring to an entity matrix wen need for the SetEntityMatrix Script command. What i have so far in that direction: 1. A way to have 3 points and gets an VW entity matrix of 3 points. Somehow my code os spreaded over a bigger code so i do now know if exactly that works in your example. code and functions i needed there code snippeds. I would say the code here took me several hours of figuring out that easy looking code. But i think at the end it maybe needs just a few lines if it was optimated. Also the vs.Vec2Ang() solves a lot. It would be hard to find out in which quadrant the plane is oriented and the direction of the points etc.. Like i told, not looked yet into your code. This snipped worked here for getting rotation matrix from 3 points. Not sure, if it works in all directions and for vertical planes in every situation. I always thought there must be a general solution for that. And there is but on the other side we must fit it to the vw SetEntity matrix also the plane matrix are different from the rotation matrix. 2. Getting a centroid and a plane. With that we can project points on that plane (not a vw plane, a plane defined by the normal matrix of the custom getPlane Node in that example). Here: At one point everything is turning into hard work. But we still have fun 🙂
  14. Version 1.0.0


    Often what is missing to make usable Elements of this geometry is the fact, that faces need to be planar to make buildable elements. Also it need to be planar to make extrudes and other solids out of it. The Two nodes "get Planes" and "ProjectPoints" are a step in this direction. This example do nearly the same the existing Surface Array already can do. Except it directly gets geometry from a subdivision object. Anyway this has to be seen as a first step trying to model hulls with planar AND closed shapes. Which looks like a very hard task.
  15. OK For some reason (my dumbness?) i convert the column "TeileName" into a number, which fails and put out an error. You can do to correct: 1. Without new version or edit the script insert a number here in Column C instead a text. 2. Or edit the script (quite easy) as following: a. Edit the PIO object b. Double click the wrapper DrawParts c. Edit Formula to c+'\\rPos. '+str(a)+'.'+str(b) instead of c+'\\rPos. '+str(a)+'.'+str(int(b)) OK, maybe a little bit complicated. I post your corrected file and a new Version 1.0.3 Thanks for reporting the issue. Werkteil Optimierung Kopie_b.vwx
  • Create New...