Jump to content

JBenghiat

Member
  • Posts

    2,028
  • Joined

  • Last visited

Posts posted by JBenghiat

  1. Community Board Members,

    After several years of between-shows development, I'm pleased to release my latest version of Beam Draw plug-ins. The update includes the following enhancements:

    ? Easy conversion of beam objects into SpotLight lighting devices.

    ? Visualization of shutter cuts. You can drag the shutters right in the drawing!

    ? Improved data on how your light focuses, like maximum width, pan, and tilt.

    ? A completely redesigned Beam Draw Section object lets you visualize beam sections in a 2D view. This is a fully interactive tool, and will even draw a figure for you, and show you what portion of the section includes the full width of your focus area.

    ? The ability to read photometric data from your symbol library, letting you easily try different unit types.

    ? A command to reverse and repeat beams, including shutter cuts and bottle rotations.

    ? If you are working with one system of beams at a time, you can easily channel them, and the data will be transferred when you convert the beams to Spotlight lighting devices.

    ? Quickly file away beams in a system to their own, hidden layer.

    ? Beam Draw Magic, which pulls position and channel data from your beams for use on a sheet layer magic sheet. You can even adjust your channel numbers to accommodate similarly focused or reverse-and-repeated systems.

    For more information or to download a demo, visit http://www.benghiatlighting.com/software or read the press release at http://www.benghiatlighting.com/JBLD%20releases%20Beam%20Draw.pdf.

    Cheers,

    Josh

    ____________________________________

    Joshua Benghiat Lighting Design

    VectorWorks Plug-Ins

    software@benghiatlighting.com

    www.benghiatlighting.com/software/

  2. There is no "right" or "wrong" way to draft a plot, but as you infer, doing a drawing without layers makes drafting more difficult, and is thus not considered good practice.

    You can create as many layers as you like (and classes for that matter), and may want to do so in the organization dialog.

    In addition to Peter's "Paste in Place" method above, you can change selected objects' layer in the Object Info Palette.

    If the drawing you have is divided into classes, you may want to temporarily change the class options to "Active Only." Step through each class, making it active, select all, then send to your desired layer.

    You friend's drawing may have started out as AutoCAD, which only has classes for organization. I have to separate out AC drawings I get all the time.

    -Josh

  3. In the vein of a short reply is better than no reply...

    Look at NURBS surfaces and their various tools and commands for the shape of the net.

    Look at grid transparency for the texture (that is, draw a cloth and use a texture to make it a net).

    -Josh

  4. Shawn,

    Regular 2D and 3D objects will stick around when changing views. Hybrid objects have separate appearances for each view -- these objects include walls and plug-in objects and symbols with both 2D and 3D components. Spotlight lighting instrument symbols, for example, are all hybrid and appear different in 2D and 3D views.

    From what I understand, VW 2010 addresses your issue a bit, allowing you to keep 2D objects in a 3D plane. Here are two other things to consider.

    - Look at your layer and class organization. If your drawing is well organized, you should be able to hide everything you don't want to see. You may find saved views are really handy here, letting you switch view orientation and layer and class visibility with a single click.

    - I imagine you're mostly switching between a plan view, a centerline section, and a front section or elevation. I highly recommend generating a 2D version of these views, especially if you're after drafting accuracy. Most venue drawings have a 2D section already, so doing this is not too difficult.

    If you have a drawing that's mostly 3D, that doesn't mean you have to draw a 2D view to get a 2D view. Explore design layer viewports. They'll allow you to get a 2D section view of your 3D model. The viewport can be on its own layer so you can look at your section clutter-free. You may find Modify>Convert Copy to Polys useful to get actual 2D geometry from 3D views.

    Personally, I only use a true 3D view to check a really tricky shot, say a diagonal coming through an opening.

    HTH,

    Josh

  5. Kevin,

    Looking through your posts, I'm realizing you're trying to work with the tool that creates the Drawing Label object.

    You are correct that Plug-In Objects lead a double life in the workspace -- eery PIO has a siamese twin tool that you can place in a tool palette. From a user interface standpoint, it looks like a regular tool, but from a VS standpoint, it's an object.

    You do have options.

    If you want to continue on the VS route, instead of using CallTool, use GetPt to get the objects insertion point. Use CreateCustomObject to place your Drawing Label at the point. CreateCustomObjectN gives you the option of having the object's preference dialog appear. You can set the object's parameters with SetRField -- you should be able to find more on this in the archives.

    If you just want to change the defaults for the Drawing Label object, go into the VectorScript Plug-In editor and find the object. Click on Parameters, and you can change any of the defaults.

    The final option is to create a "Red symbol". Set the parameters of a Drawing Label in the document, make it a symbol, and check the Convert to Plug-In option. You'll now have an object with preset attributes in your Resource browser. Search the help docs for "Red Symbol" for more info.

    HTH,

    Josh

  6. This is a bit late coming, but here is my philosophy on layers and classes.

    Think of layers as sheets of vellum and trace, where you would generally only want to work with the drawing objects on each layer at a time. For example, at the least I always have Architecture, Set, & Lights. I almost always work with my layer options set to show-snap others, just in the way that I would only draw/erase on one sheet of trace at a time.

    Think of classes as types of things, which can appear on any layer. You can assign line weights and styles by class, so it's a good idea to assign classes for each type of pen style. You can also sub-categorize classes with a dash. For example, I have lines-center, lines-phantom, lines-plaster, etc. as well as Data Labels-Focus, -Color, -Unit #, etc. I have a class for my hanging positions and one for the outline of my instrument symbols.

    Another way to visualize the distinction between layers and classes is to think of a building. Layers are like floors. They have a stacking order, can contain things, and you generally are only on one floor at a time. Classes would be the things in the building--people, furniture, etc. You can have people on any floor, and you can further classify them as people-men and people-women.

    I hope some of this is useful.

    -Josh

  7. Just to clarify, plug-ins are always forwards compatible (assuming the next version doesn't break the code), but not backward compatible. Always develop plug-ins in the earliest supported VW version.

    Do you have the old versions? If most of the mods were to the code, you can cut and paste from one version to another (even easier if you're using include files). If you made lots of parameter changes, you'll have to recreate it all.

    -Josh

  8. Explicitly, no. I think the caution is declaring more variables then you need.

    For example, say you have a script that draws a triangle with three lines. After drawing each line, you want to set it to a color, so you need the handle to the line.

    You could declare a variable for each side:

    side1 :HANDLE;

    side2 :HANDLE;

    side3 :HANDLE;

    If you need to come back to side 1 after dealing with side 2 then this is the way to go.

    You could also declare a single variable:

    lastSide: HANDLE;

    If you draw the side, set the color, and never need to do anything else with it, just re-assign lastSide to the last drawn line, and you use 1/3 the memory.

    To be the most efficient, use the handle in a sub-procedure:

    PROCEDURE ColorThisSide(theSide:HANDLE);

    Then within the main script, call ColorThisSide(LastNewObj); Here the handle is created only why the side is being assigned its color, then released at the end of the procedure.

    What you do depends on when and how often the script needs to access the same object. Extrapolate this example to all selected objects, and the affect on memory becomes significant.

    -Josh

  9. Hi All,

    Just my $.02, but VW is a drawing program and does that very well. Lightwright is a database/paperwork program and does that very well. I'd personally rather their developers continue doing what they do best and continue improving how the programs talk to each other than duplicate each other's features.

    VW's spreadsheet functions are great for getting a quick, live snapshot of a plot (how many units am I using? Does everything have a position assigned?), but I don't think they are or should be developed to be a substitute for a real paperwork or spreadsheet program.

    -Josh

  10. No script necessary -- choose Tools>Set Origin or double click the Set Origin tool at the top-left between the rulers. Select the Set Origin to Drawing Center option.

    Here are a couple of tips for shifting the whole drawing to the default origin:

    - Save the current view. Next make all layers and classes visible by option/alt-clicking in the "visible" column. Make layer and class options show-snap-modify others. After moving the origin, return to the saved view.

    - Double-click the locus tool and place a locus at 0,0 before and after switching the origin. Select All and drag the old origin locus over the new one.

    -Josh

  11. Forgive me if you already know this, but have you looked at the VS Language Guide? It's available through the VW help system. There's a section called User Defined Functions that you may find useful.

    -Josh

  12. Timbo,

    I think what you're looking for is using includes to define sub-procedures. Each command would be in its own text file:

    PROCEDURE Plugin1;

    CONST

    {your constants}

    VAR

    {your vars}

    BEGIN

    {your calls}

    END;

    Your calling procedure for your menu item would look like:

    PROCEDURE Main;

    CONST

    {your main constants}

    VAR

    {your main vars}

    {$INCLUDE path_and_Plugin1_filename}

    {$INCLUDE path_and_Plugin2_filename}

    {etc...}

    BEGIN

    Plugin1;

    Plugin2;

    {etc}

    END;

    Run(Main);

    Hope this makes sense.

    -Josh

  13. Re running plug-ins

    Just to clarify, by "plug-in" do you mean plug-in menus, or do you mean objects and tools as well.

    VS can run sub-procedures, which seems to be what you need. If the procedure is used be more than one plug-in menu, put it in an include so it can be shared.

    What do you mean by "Including a lot of source text seems... ugly"?

    -Josh

  14. #4) Can you give an example of what you are trying to do? DoMenuTextByName often works well -- it's far less kludgey than you may think.

    As a general note, VS is based heavily on Pascal and is also not a high development priority. You may find that you have to wait a bit, even if your requests eventually get implemented. You may want to also post some specific "How do I..." questions.

    I noticed that a lot of your requests involve criteria. Personally, I've found that I used a lot of criteria-based functions when I started scripting, but as my code became more sophisticated I used them less and less. You may find that there are other ways of doing what you want that avoid criterium.

    -Josh

  15. Yeah, I just spent 20 minutes looking for this. They certainly have done a good job of hiding it. "Smart cursor settings"? How counterintuitive is that?

    There is actually an intuitive way: go to Tools>Set Grid... The snap cursor settings are just a short cut.

    And, did you know that double-tapping a tool or snap button performs the same function as double-clicking it? Just his "aa" on the keyboard, and you get the Set Grid dialog.

    HTH,

    Josh

    • Like 1
×
×
  • Create New...