Jump to content

SamIWas

Member
  • Posts

    409
  • Joined

  • Last visited

Everything posted by SamIWas

  1. If you use an app called BetterTouchTool, you can build your own custom buttons with colors, icons, and text to put in the touch bar on a per-application basis. I've had my No-Port MacBook Pro for only a few days, and it was the first app I downloaded. And VW was the first one I put buttons on. I haven't yet really put it through a real test, but it did work. I'm sure touch bar support will come, but it'll likely be a year or two.
  2. I haven't read the entire thread, but if all you want is to put selected objects within a layer into a certain class, this will do it. It doesn't select other objects. It doesn't put other objects into a class. It works just on what is selected. Added the Refresh Instruments for spotlight instruments in case you are using them...they often like to be refreshed after script operations. If you aren't using Spotlight, you can remove that line. I'm sure you're looking for something with more options or to dig deeper, but if you just want something quick and easy.... PROCEDURE Assign; VAR obj : HANDLE; BEGIN obj:=FSActLayer; while obj<>nil DO BEGIN SetClass(obj,'The New Class'); obj:=NextSObj(obj); END; DoMenuTextByName('Refresh Instruments',0); END; RUN(Assign);
  3. As far as one to parse the meaning of, here's a simple dialog to create a rectangle. It may have come from this site somewhere... In red is what is confusing.... Procedure DialogTest; TYPE U_RECT = STRUCTURE a: REAL; b: REAL; END; VAR gRectObj: U_RECT; FUNCTION SetUpDialog(rectObj: U_RECT): LONGINT; VAR ID: LONGINT; BEGIN ID:= CreateLayout('Rect Dimensions',TRUE,'OK','Cancel'); {Text fields} CreateStaticText( ID, 05, 'Value-a', 15); CreateStaticText( ID, 06, 'Value-b', 15); {Box fields} CreateEditReal( ID, 15, 1, rectObj.a, 10); CreateEditReal( ID, 16, 1, rectObj.b, 10); {Text layout} SetFirstLayoutItem( ID, 05); SetBelowItem( ID, 05, 06, 0, 0); {Box layout} SetRightItem( ID, 05, 15, 0, 0); SetRightItem( ID, 06, 16, 0, 0); SetHelpText(ID, 1,'Click to accept values'); SetHelpText(ID, 2,'Click to cancel operation'); SetHelpText(ID, 15,'Enter width'); SetHelpText(ID, 16,'Enter height'); SetUpDialog:= ID; END; FUNCTION GetRect(VAR rectObj: U_RECT): BOOLEAN; VAR a,b: REAL; ID,dlogResult: LONGINT; PROCEDURE DriveDialog(VAR item:LONGINT; data:LONGINT); VAR i,choiceNo: INTEGER; foundName: BOOLEAN; BEGIN CASE item OF SetupDialogC: BEGIN END; 1: {OK} BEGIN IF GetEditReal(ID,15,1,a) THEN rectObj.a:= a; IF GetEditReal(ID,16,1,b) THEN rectObj.b:= b; END; 2: {Cancel} BEGIN END; END; END; BEGIN GetRect:= FALSE; ID:= SetUpDialog(rectObj); IF VerifyLayout(ID) THEN BEGIN dlogResult:= RunLayoutDialog(ID,DriveDialog); IF dlogResult = 1 THEN GetRect:= TRUE; END ELSE AlrtDialog('Cannot create the dialog'); END; BEGIN gRectObj.a:= 1.25; gRectObj.b:= 2.64; IF GetRect(gRectObj) THEN BEGIN Rect(0,0,gRectObj.a,gRectObj.b); END; END; Run(DialogTest);
  4. Hey Josh, I have not written the handler. That's where I get confused looking at others' scripts, trying to figure out their handler and function parts and how it all relates. Here is my code so far. I can clean up the layout later, and this was just something to learn. But all I want to do from here is pass 6 to the Universe field in the Lighting Device record, and pass 7 to the Address field. And if 8 is checked (want to make this the default but still looking into that), it will run 7 through a script to format it. I think if I can get those basics down, I can then dig into the meat of it all. Thanks for any help...I know you're the master at this stuff! Procedure DIALOG; VAR id : LONGINT; result : LONGINT; BEGIN id:=CreateLayout('Assign Address',FALSE,'Apply','Cancel'); CreateStaticText(id,4,'Assign Universe:',-1); CreateStaticText(id,5,'Assign Address:',-1); CreateEditInteger(id,6,0,6); CreateEditInteger(id,7,0,6); CreateCheckBox(id,8,'Use three digits for address'); SetFirstLayoutItem(id,4); SetRightItem(id,4,6,0,0); SetBelowItem(id,4,5,0,0); SetRightItem(id,5,7,0,0); SetBelowItem(id,5,8,0,0); SetHelpText(id,6,'Enter universe here'); SetHelpText(id,7,'Enter DMX address here'); SetHelpText(id,7,'Check if DMX address should have 3 digits. Exaample: DMX 45 = 045'); result:=RunLayoutDialog(id,NIL); Message(result); END; RUN(DIALOG);
  5. I've done plenty of Vectorscript, having written several dozen including my own custom Vectorworks to lighting console 3d/patch exporter. So I'm no stranger to coding. I am trying to learn to make some basic custom dialogs , but every example I look at just melts my brain. I can't even figure out what relates to what and how the information in the fields gets passed to the rest of the script. I've read over all the ones listed on the developer page and tried to break them down, to no avail. I've used the Dialog Builder, but it's not the layout I have issues with. All I'm looking for is to create a dialog with a few text edit boxes, maybe a checkbox or two, and possibly a drop-down with basic user-entry info. I've succeeded in creating the layout with the fields and tested those out, and gotten a report on whether I clicked "Cancel" or "OK". Now, I just need to figure out how to pass the information that is typed into a text box or selected in a drop down to a simple variable. But it seems that even something that simple involves all sorts of complicated coding. Is there something I'm missing here?
  6. I guess it depends on how complicated of a setup you are looking at. There are obviously methods with central servers that people above are using if you have numerous computers to keep updated. I keep everything VW synced between my home iMac and my MacBook using a program called Chronosync. Essentially, it runs a few times a day and copies whatever files have changed between the VW user folders on each computer, using the most recently changed as the master. I've been doing it for years and have not had any issues. Scripts, workspaces, and preferences all update on both computers. I do not know if this is scalable to more than the two computers, but it probably could be with some planning.
  7. Curious what VectorMove did. Can't find much info online.
  8. If there's a way to do that in record formats in 2016 and prior, I've never found it. I can do it within Spotlight fields.
  9. Have you ever thought you were really proficient with a piece of software, then watched a video of someone else using it, and realize that you're a peon? Yeah...that's what watching this video did...
  10. Good topic. Preview has become unusable for CAD PDF viewing. SO slow.
  11. Wait...does 2017 have drop-down menus in record formats??? I might have to retry it this week and see if it's stable for me now! That was one of my biggest wishlist items, and I didn't even realize it.
  12. Finally finished my workbox and updated my console box.
  13. I create my own symbols for pretty much everything. Stock symbols don't seem to follow any sort of design standard, and I like my stuff to have a cohesive look.
  14. The way I dealt with this was to not use a symbol for the tape. Instead, I wrote a script in which I enter the length, spacing, size, etc and it draws a section of tape. Then I have a symbol that is just a locus which I put on top of the drawn bit where I enter the fixture info. Of course, this means that I can't change the length, but it gets me by. I would love to see a tool for this.
  15. I don't know what that is, but I'll check it out. For what it's worth, the same file opened on my laptop. It just crashes on the iMac. So I'll have to investigate further.
  16. I just started playing around with 2017 tonight. The first thing I did was to open the file for the show I'm working on right now. Crash. Restarted VW and tried again. Crash. I have not been able to open that file after about six tries...it crashes every time. I tried opening a backup of the file from a week ago, and it crashed as well. I tried a file from my previous show and it opened fine, so it would appear that something in the current file. The current file was originally started from the previous show file. I cannot post the file here, since it's of a confidential set, but is there somewhere at VW I can send it for testing?
  17. This is my desk. I don't have an up-to-date photo of it as it's far too messy now to admit to. Since this photo was taken, another 23" monitor has been added to the right of the iMac, so that it's a 27" screen flanked by two 23" screens. There's also a new printer. The MacBook is only there sometimes. Just finished the design for my mobile production desk, so when it's built (could be months) I'll check back.
  18. Good point! Never thought about this. I forget that Find and Modify is even there, as I remember it can o some powerful things.
  19. Thanks Jim. I figured it might not be something easy. I'm sure the new results will filter to Google in time. I have found that the search on the new forum is bringing better results, so I'm able to find things.
  20. I use Google a lot to ask questions if something is stumping me in VW. Google always lists the Vectorworks techboard first, and I almost always got an answer. But, Google is still links to the old techboard, and clicking the "We've moved" link there doesn't forward to the same thread on the new board. I'll try doing a search within the forum, but is there any way to make links pointing to the old forum forward to the same thread on new forum?
  21. It's pretty easy with a VectorScript, and I have done this exact thing before with other fields for a similar reason. This one will put address into the User Field 6 field. It only works on the current layer with visible objects, however. PROCEDURE CopyInfo; VAR h,hl : HANDLE; info : STRING; num : INTEGER; BEGIN hl:=ActLayer; num:=NumSObj(hl); h:= FSActLayer; while (h<>nil) do begin info:= getRField(h,’Address’); SetRField(h, 'Lighting Device', 'User Field 6', info); h:=NextSObj(h); End; Message ('Replaced address info on ',num,' fixtures.'); DoMenuTextByName('Refresh Instruments',0); END; Run(CopyInfo);
  22. Can't find a "Forum Feedback" section, and see another post regarding forum design here, so I'll ask... Can there be a better division between posts in a thread? As it stands now, there is almost no visual border between posts, short of a very thin, light grey line. Makes it difficult to separate each post.. My suggestion would be that the rectangle around each post be darker and bolder, and that the header with poster name, number of posts, etc. be some level of grey, just to help separate it. I have a few other things on page design, but I'll save those for another post. I think a "Forum Feedback" section would be nice to have for a bit during the transition.
  23. I think a viewer with ability to turn on and off classes and layers, and call up saved views would be a fantastic start. But, I'd still love to be able to edit the information in record formats and the OIP. Being able to move a symbol, such as a lighting fixture on a spotlight lighting plot would be fantastic. But drawing tools are certainly out of the question.
  24. Oh, man...if the Vectorworks could resemble the C4D UI in any way, it would be incredible!
  25. I know this is an old thread that got revived, but I'll add my 2 cents. What I always hoped for in an iPad version of Vectorworks was simply the ability to open the file and view it, better than I could with a PDF. The ability to turn layers and classes on and off, along with saved views, would be a must. And a spectacular feature would be to edit information on symbols (record formats or other OIP info), place symbols already in the file, and add text for notes. Actual drawing, or placing walls, windows, etc, is far beyond what I think a mobile version would be capable of. But i'm not sure what even that simplicity would require. I used to use an app called AutoCAD 360, and would export my Vectorworks drawings to DWG, then open them in that to view them. Worked OK.
×
×
  • Create New...