Jump to content

Samuel Derenboim

  • Posts

  • Joined

  • Last visited

Posts posted by Samuel Derenboim

  1. Try installing the latest mysql 8 odbc driver. The native one doesn't work, had similar issues. Also, use the universal driver rather than ansi


    Also note that you can actually access the database and have your password and login correctly


    I dont have Mac unfortunately, can't test it.

  2. Recently ran into a problem in graphic legend referencing. In abstract, I believe the graphic legend tool has the ability to potentially eliminate drawing wall type details by about 50% if not more! Currently I am trying to use the Graphic legend tool to essentially do just that - create details for all the wall types, floor types, symbol types etc...to be used for current and future project in our office. I have succeeded in the most import aspects - extracting component and material information from these elements. There are just a few things missing - a scaling reference (one shown in GRAPHICLEGEND scale) and a number sequence for image cell numbers. It seems they already autopopulate the numbers given that each image can be previewed seperately as image cells (see below). These number can then be used as detail callout numbers from the plan (not necessarily referenced, but indicated / recorded).


    I think this would be a huge timesaver for many people here.



    image.png.03dbf0c4d41cf10e5261629a093c4cda.pngDATATAG COMPONENT CALLOUTS.vwx


    My wish is to be able to extract this information into the dynamic text properties (i.e. #WS_Objectdata(GraphicLegend#, scale) or something similar,


    #WS_Objectdata(Graphiclegend,cell number) or something similar.


    But here is the prefinal result!




    I'm attaching my reference file to show the remaining information that can be extracted from PIO's.

    • Like 4
  3. ODBC and SQlite remote databases is a beautiful feature in VW. In BIM Software in reference to Architectural Drawings and the entire AEC Industry has possibly become more about referencing information than just simply drafting plans etc...

    This is proprietary or generic information about building products, light fixtures, furniture, etc... Managing all of this information from a single source (VW) is extremely difficult. This is why ODBC and SQLITE in VW is so useful! If information can be referenced externally, it can also be Managed externally. Additionally, it can give VW an upper leg on competition with Autodesk Revit given that much of the informational libraries for Revit have been created by Manufacturers themselves. This however can apply record information to generic symbol library and expedite the process of creating massive symbol libraries.


    These databases can become quite large given the number of proprietary and standard building products. This information can include a lot of information including but not limited to specifications! Currently there is not sorting feature in ODBC and SQlite window. My request is to simply at a sorting function for record information, possibly similar to the way record information is sorted in worksheets database connection. I'm not sure if this is a big ask, but I think this could start the implementation of standardization in offices large and small that use VW



    • Like 1
  4. Creating a database of materials and specifications unfortunately is quite a tedious task and not always can be done inside of VW. Currently, when editing properties for materials, all physical / other properties need to be filled in manually. Given the number of permutations for material properties, the task almost seems unreachable when doing this manually (also especially when needing to update the information! )


    What if we could populate it from a database (say that has a list of information regarding Building product information in HEAT, AIR, and Moisture Control in Building Assemblies - material properties from ASHRAE Handbook of Fundamentals,etc..)





    • Like 2
  5. @Phil hunt

    Actually there is, but the path is a bit convoluted.


    I used sketchup as a stepping stone to import the required textures. If you know how to use it do the following :


    after installing sketchup - go to sketchucation.com and download the store rbz plugin or find - fredo-import all from folder plugin.


    What this plugin basically does is it imports all image files from a directory. (this is how i imported over 5,000 textures into my library, and i'm still not done!)


    Once you import all the images, select all and explode them (that will populate the sketchup document file directory. Once imported and exploded, save the file.


    Afterwards, import the sketchup file into VW without erasing the geometry inside of the file. Once you do that, it should import as textures.


    Just be sure to input the correct names of the textures in the directory (especially if they are pbr textures) like texture a vs texturea_bump (I use an open source file renaming utility) etc..


    Hope this helps!

    • Like 1
  6. @Nikolay Zhelyazkov

    Thank you! I'll double check the settings shortly.


    Pardon that I have so many questions but this is quite new to me.


    I did also want to ask


    1. Is it possible to get the graphic scale of the image inside the graphic legend? I.e. if graphic legend image scale is at 1.5in =1ft, Is it possible to display it in the legend dataset ( I found it as a resource in the tag reference, but don't know how to call it out in #ws_objectdata# or #graphiclegend# / graphic legend image )


    2. Is it possible to 'count' every instance of the graphic legend in sequence? (I.e. if there are 16 details, each has a number for reference)

    I've been playing around with the database sequence settings, but I don't think it knows how to count every instance...perhaps there is a trigger?


    Thanks so much!




  7. @Nikolay Zhelyazkov




    Mind = Blown

    I've never seen a conditional statement like that before in any of the data tags. Is this something new? Is this the only datatag conditional statement format? Just curious if I can read up more on the properties of these conditional statements. There is something to note however, the number is displayed as fractional feet, but the unit of measurement is inches. I have to actually multiply the value by 12 in order to get the correct dimension.  Like so below :




    Why does it display 1/12 of the dimension? Is it because of units in the document? I've changed the units, still doesn't seem to change the value though. I don't mind multiplying by 12, just curious why it does this.


    Also, I have created a prototype graphic legend that intended to do the same thing, however, it doesn't work the same as it does for the datatag. One of the things that happens is that after the 1st line in the description, dimensional information reverts back to decimal and displays foot information rather than ft/in information.

    I know it sounds confusing. Attaching the file here.


    Nikolay, Thank you in advance! You're a tremendous help!!!




    • Like 1
  8. @Zsombor@Anders Blomberg

    Good news,

    You can enter conditional statements into data tags. The element you were concerned about was values being shown when they were zero.

    See Screenshot below


    Note there are only 7 layers attached.


    Component Description - From outside to inside :

    #WS_IFNA((OBJECTDATA('component', 'thickness', 1)), ' ')# #fi_3_2# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 1)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 1)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 2)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 2)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 2)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 3)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 3)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 3)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 4)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 4)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 4)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 5)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 5)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 5)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 6)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 6)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 6)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 7)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 7)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 7)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 8)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 8)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 8)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 9)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 9)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 9)#
    #WS_IFNA((OBJECTDATA('component', 'thickness', 10)), ' ')# #WS_IF(VALUE(OBJECTDATA('component', 'thickness', 10)>0), 'in thick -', ' ')#   #WS_OBJECTDATA('component', 'name', 10)#


    I'm still working on a tidier method however. Since there are conditional statements, its possible to make this a much more elegant solution!


    @Nikolay Zhelyazkov


    I was wondering regarding the information above -


    1. Is there a function to call out component index ? i.e. 1, 2, 3, 4, etc...


    I have looked through all the variables in the insert function context menu in the worksheets, but have not found anything.


    2. Is there a way to display the dimensional information of values to fractional inches or feet rather than decimal inches / feet in the datatag layout

    I tried to use  #fi_3_2#, but it doesn't work. Is there something that I'm missing?


    Thank you in advance!

    • Like 1
  9. With the addition of various materials and components, it would be nice to provide various hatches for insulation, (i.e. Rigid, friable, mineral wool etc... between centerline spacing) or various other configurations. I have attempted this with hatches and tiles. see below :



    When using linear configurations, the tile can reverse positions in plan like shown above. Tiles also have an inability to be exported as hatches to autocad. Something to note!


    When it comes to hatches -




    A good example of hatches do not tile appropriately because they do not have a starting point. Therefore if the wall moves, the hatch tiles differently (in both world view as well as page view). The good news it can export to dwg.


    Last experiment included using offset custom line types along component lines (left of right). However this has a major flaw - line types are reversed when using different section wall views such as this.

    Here is an example.




    The two section viewports are referencing the same wall type. However because the line type alignment is on one side, the line type reverses (as seen on the left) when the viewport switches direction.


    As such, the request is to have the opportunity to provide a linetype for the Core or Centerline of the component to have a more variable ability to create wall styles\roof styles\slab styles\hardscape styles with linetypes that can be exported to autocad properly as well as beautiful looking wall styles. See example below




    Given that vectorworks outputs the most beautiful construction drawings of any software I have used in the past, I would say this would make a nice addition with your approval!

    • Like 1
  10. Has anyone ever linked records using Marionnette tool? The reason I'm asking is - say you have an inhouse record management system and you want to synchronize it with IFC records? or say you imported revit symbols with their own record system, and want to update that with your record management and ifc. Has anyone encountered this problem before?

  11. Has anyone had any experience using the data manager and parametric objects like windows and doors?


    The reason for the question is to link external databases that have information on doors and windows to parametric objects without having to create styles individually. Going to manufacturer to manufacturer and custom make parametric objects is unfortunately very tedious, and wanted to speed up the process. Like for example Marvin and Pella windows - vectorworks created a great catalog however some information and sizing is outdated (particularly product names) which makes me feel a bit wary of using them, therefore i end up creating my own when i have the time. However there are also some other companies like anderson, and even European windows like zola etc... that would still need some kind of integration on the users behalf. VW obviously doesn't have the resources to produce something like that, and I don't expect them to since the features they're working on i believe should be the priority.


    With my recent discovery that ODBC can be referenced remotely, I have a renewed desire to link database libraries to parametric objects. How would one go about doing this?


    Has anyone experienced this? Any thoughts?

  12. On 2/25/2021 at 5:40 PM, Ben Beaumont said:

    We have constructed localised libraries of 100's, (pushing 1000's) of Materials. @Julian Carr has written a script to create Materials from Textures which helped enormously. There is also a Worksheet that can push other material values into Material Styles. This is a boon for building libraries with repetitive information. We have updated our Wall and Slab styles such that the external and internal components (only) use Materials. Typically the external face is textured with an associated surface hatch (eg; painted weatherboard) so the component has a discernable thickness. The weatherboard Material library has any given profile in multiple popular colours. There are around 5 common weatherboard profiles and 100+ popular exterior colours. I don't think we can reasonably use Classes to manage the attributes of 500+ weatherboard options alone.
    We have constructed an 'Applied Finishes' Materials library with about 150 popular and fashionable paint colours from a leading paint supplier. The Wall styles have a 0.1mm internal Component for the 'Applied finish'. The slab styles (for ceilings) have the same. The Wall Styles in our libraries have 'Natural White' associated with them, the ceilings have 'Ceiling White' associated with them.

    The Attributes of the other Wall and Slab components are still 'by Class'. We have a short list of (legacy?) Component Classes to control these attributes.  
    It is a pleasure to use the Wall and Slab Styles straight from the library and to be able to simply swap out the Material with a preferred option (also straight from the library).
    I hear the comments about the absence of Class override type control for Materials, but for me the flatter workflow of simply applying a Material to an object is a far lesser evil than trying to do it with Classes. Considering the ease with which a model can be 'painted' in some other platforms, Materials are a welcome development.

    @Ben Beaumont


    Are these scripts available? I have been searching for something like that for the longest.


    1. Script to create Materials from Textures

    2. Script to write info into the material settings

    • Like 2
  13. @elepp


    I agree . Great potential.

    I'll start another post later, but combing this with a web gui remotely will sky rocket it's potential.


    May I ask, what do you use it for in particular ? Sorry about that, too early in the morning, didn't see you mention you used it for windows.


    Do window sizes auto update upon selection of the record?


    And can you lookup database tables to cross reference records in a worksheet? ( it's a topic I will start a new post on soon )

  14. UPDATE 3


    When you start stacking up with the ODBC datasources, you still need to delete the ones that do not work.




    Go into administrative tools and ODBC Data sources and remove any data sources you do not need.


    Also, if you want to set up new datasources flexibly without VECTORWORKS, this is the way to do it! In vectorworks you cannot modify existing ODBC databases. Here you can.





    • Like 1
  15. great news everyone, ODBC works for mssql . however I am missing something. I am still getting an error after setting up a connection after successful test via ODBC.


    I used MS SQL server 2019. Am i to use an earlier version?


     I was able to set up a table inside the container and was able to connect via test connection when setting up ODBC parameters.







    after setting up the connection - i get this error





    Note - I have confirmed the sql tables work via noco database, so the problem lies with either the driver, sql version number, or something else. (see screenshot below)


    connection currently works, i just don't know why it rejects the connection after successful test.



  16. @jeff prince@unearthed

    I'll do some experiments, stay tuned!


    But here is the summary of what I've discovered so far (on a local level)

    When using an sqlite file, I modify the sqlite file in an open source sqlite file editor - something like



    I add tables to it specifically to what I need (I.E. product database with insulation characteristics, or pricing tables, or zoning / building code reference database and I link the database to record information in VW in read only mode.


    When i assign that record to an object - it does not update immediately, i have to use the update vectorworks database in order for it to choose. The table above was an experiment of sqlite database reference - and in large databases, a search query or search by record would be fundamental to using ODBC.


    The part that is annoying is that I can change a record in the sqlite file upon entering the information, but I cannot update the object upon selecting the record, which is a bit frustrating.




    I'll try using ODBC with mysql hosted on a local docker vm and update my progress soon.


  17. Can someone please explain this to me? We can host SQL servers to carry database information???? 😁


    Does that mean I can host an MYSQL Server on docker and use it for referencing and crossreferencing databases?



  18. 18 minutes ago, Nikolay Zhelyazkov said:

    - I am happy to have helped! If we go for Bulgarian it is "Благодаря" 🙂


    - Have you tried setting the text wrap of the objects in the tag layout? I think that this might be what you are looking for. If this is not the case, can you give me some more details on what exactly do you mean?


    @Nikolay Zhelyazkov

    In that case, Благодаря !  🙂


    Also regarding your question - see screenshot below. This is a comparison between a tag vs a annotation callout . A callout has toggles, but no database reference.

    It would be nice to resize text like a callout in a limited size viewport in case it is needed.


    (also, I have a hunch that a future feature - legends will work very similarly to a tag, only summarizing in bulk all of the elements referenced...might eliminate this need entirely if the text in the legends can be resized similarly...


    I also have a hunch that you are also directly related to that feature!....but alas, it is only a hunch! 😁 )




    • Like 4
  • Create New...