Jump to content

EBV_Nick

Member
  • Posts

    9
  • Joined

  • Last visited

Everything posted by EBV_Nick

  1. Hey @MullinRJ Unfortunately this file is super proprietary and I can't share any info from it. Essentially, every symbol is a solid object that is broken up into it's polygon faces with meshes (think a cube would be 6 meshes). I went through each symbol and added all the meshes together and then converted to generic solids. I believe the order of operations I'm looking for is: - Enter each symbol (all are in the main root) - Select all objects (they should all be meshes) - Add all objects together - Convert solid addition to generic solid - rinse and repeat Apologies for not being able to post a sample file, but hopefully this is enough info. Hoping to dive into VS soon myself and eventually I'll be able to provide my own solutions to my own problems! (hopefully) Thanks!
  2. Hey all, Circling back to this for a very similar issue. I'm ingesting a huge Revit model that is made up of thousands of 3D symbols that are all made up of meshes. I've been going through and pretty painstakingly adding all of those meshes to a solid addition and then converting to a generic solid. I attempted with my near-zero knowledge of scripting to edit the above script @Pat Stanford posted to do this but unfortunately couldn't do it. If anyone could help out that would be incredible. I often find myself doing these repetitive operations going through large amounts of symbols in a drawing. If someone could help explain the outlines of a script that I could learn to change the bits to adapt to the types of operations I need to do that would be incredibly appreciated. Thanks!
  3. Hello! I have been having this issue lately in 2020 where whenever I export my lighting fixtures to grandMA2 Setup (XML) none of the fixtures will export their X or Y rotation but will take their Z rotation. I have tried a couple of things since this has been happening: - reinstalled the plug-in - reinstalled 2020 - exported to 2019 and tried it there (this worked) - changed the symbols that the lighting devices were referencing - started a new file in 2020 with default VWX lighting symbols, converted to lighting devices, rotated them, still no dice - e-mail support at ACT and they said that they were able to get it to work by reasserting the rotation for fixtures that already had it Out of ideas and any help and or ideas would be greatly appreciated, thank you! -Nick
  4. @Pat Stanford thanks! Just to be clear, how would the procedure work if FSActLayer was not there? How would it know what to run the procedure on?
  5. I finally figured it out @Pat Stanford! It took some dissecting of what was going on and some looking up of function but I finally puzzled it out. Procedure Main_Script; Var H1:Handle; B1:Boolean; ORot:Real; Procedure Callback(H1:Handle); Begin H1:=FSActLayer; ORot:=HAngle(H1); SetRField(H1,'Lighting Device','Rotate3DPosition','True'); SetRField(H1,'Lighting Device','EnableZRot','True'); SetRField(H1,'Lighting Device','zRot',Concat(ORot)); ResetObject(H1); SetDSelect(H1); End; Begin ForEachObject(Callback,(((VSEL=TRUE) & (PON='Lighting Device')))); End; Run(Main_Script); At first, I just copied the original script and used the template you gave me but I had some issues with the variables (still confused about the global vs. local variable portion of the template). After I figured that out, the script compiled successfully so I tested it out and it was only working on the first light in the selection so I realized it must have something to do with the "FSActLayer" by only looping back and running on the same first selected Lighting Device. I tried to see if I could switch that to something else and then thought of just deselecting the completed light once the Procedure completed. I found the SetDSelect procedure and it worked like a charm. Very excited! Thank you again!
  6. So I went ahead and tried my best to define each part of the script for my understanding and learning process: (comments posted after each line) Procedure LDRotation; Var H1:Handle; {defining H1 as your Handle} B1:Boolean; {defining B1 as your Boolean} ORot:Real; {definitely ORot as a real value? integer?} Begin H1:=FSActLayer; {setting your Handle to be the first selected object on the layer} ORot:=HAngle(H1); {setting ORot to be the angle of the Handle or the first selected object on the layer} SetRField(H1,'Lighting Device','Rotate3DPosition','True'); {Not sure what the "R" between Set and Field is for, but enabling 3D Orientation on H1} SetRField(H1,'Lighting Device','EnableZRot','True'); {Enabling Z Rotation} SetRField(H1,'Lighting Device','zRot',Concat(ORot)); {setting the Z Rot field to be the ORot value} ResetObject(H1); {updates the object with the new Z Rotation value} End; Run(LDRotation); The only two things that were unclear to me were the "H" in front of Angle and the "R" in SetRField. Thank you again for this script!
  7. @Pat Stanford it works! I've been looking forward to this day for some long! I'd love to learn how to make it work across all Lighting Devices in the file if that is possible. This will save us so much time. Thank you so much!
  8. Thank you so much @Pat Stanford! I will give this a shot right now. Am very interested in learning more about this and will absolutely be coming back to talk more!
  9. I've never done any scripting before, only used scripts that others have created. I would like to know if it is possible to create a script that does the following things to all "Lighting Devices" in a file: - Copy rotation data - Enable "Set 3D Orientation" if it is not already enabled - Enable "Z Rotation" if it is not already enabled - Paste rotation data into "Z Rotation" field If anyone could help me out with this I would truly appreciate it! Thanks!
×
×
  • Create New...