Jump to content

Hippocode

Member
  • Posts

    796
  • Joined

  • Last visited

Everything posted by Hippocode

  1. I have no experience with Python. I do know there is a specific SDK call to call all the available Python functions. I'm not sure how flexible it is.
  2. Well in the SDK I think you could catch it with drag events as well, which would even include first and completion click.
  3. You could try sending "it" a private message trying to find out
  4. You can still add an IFC tag to those extrudes so you can have them exported and distantiate them when clashing in Navisworks?
  5. When you create a menu item from scratch, it can be standalone or exist out of an amount of submenu's (chunked). The great thing about the latter one is that, similar menu commands (e.g.: add X, edit X, remove X) can be grouped into one menu instance in the workspace manager, but appear as 3 menu items to the user when added to the workspace, as mentioned the DoMenuByname should default to chunk 0 for standalone menu items, and to the chunk identifier in case of a chunked menu group.
  6. It can be, but it's a bit harder to work out. Each IFC data field is split into 3 record fields, for which two describe the name and type, the third one the value. This makes it harder to find the field you want to display, as the field name might be something like "Field 1" etc..
  7. You can always try: SetObjectVariableBoolean(GetObject('RECORDNAME'),900,True);
  8. I agree, but I also understand developers have to make choices on what they focus, and in this case MEP was not on the drawingboard. Oh well, I'm working on some awesome updates for VectorMEP, keep an eye on it
  9. There is no global way of doing this, certainly with third party plug-ins. The functions mentioned by Josh are the best option for default units. VS based plug-ins will have limited implementations for anything not being a default unit. With the SDK there are more options, including translating units while being shown in worksheets but not everything will be exposed, certainly not from third party developers. There are interfaces available for energy and irrigation units.
  10. I believe all the publish-like commands are available in vectorscript. You could create a script that updates each titleblok date field, next run the publish dialog in one command.
  11. It might depend where you are calling this function? Typically it's called within the "MouseMove" event of a tool, at least using the SDK it is working properly.
  12. Well you can get the origin of each text object and find the space where this point lies within the boundaries of the space polygon. Then apply that name to the space.
  13. Convert the poly to the space, easiest way. You can just create a new space, just assign the poly as path. Don't delete the poly afterwards as it becomes part of the space.
  14. Scripting wise it's easy, but a math challenge is always fun. Start with listing all walls and their absolute start/mid/end coordinates in a struct array. Find the wall that is closest to this point by comparing coordinates. Also make sure you also check the midpoints when comparing as you could otherwise start with the wrong T junction wall segment, if that T junction is the closest point, owned by multiple walls. Next compare the wall with other walls to find adjacent walls and recursively keep doing this until you find the first wall piece again. Check handles to verify. - If you are at a junction, you need the choose the closest wall from the available options, again compare by midpoint. - If you don't find the original object again, you are trying to create a point in a none closed shape. - If you do find a closed wall shape, verify the point lies within the polygon formed by these walls, otherwise the point lies outside the building contours and the shape should be invalid.
  15. I thought earlier versions as well. You can create a list of possible values that can appear in the drop down.
  16. when you want to show any kind of record field in a database row, this is the structure you should use: =RECORDNAME.FIELDNAME In case the record or field name contains spaces, you need to add ". ="RECORDNAME"."FIELDNAME" In case of a parametric object, the default record has the same name has the object. In your case you need to use the name of your custom record.
  17. If that is the case, splitting up these 3 strings over 3 records could be an easy solution? Since it's such a large string, I assume it contains a sort of delimiter key which is using a lot of space? Consider storing each substring in a separate field of each record? http://developer.vectorworks.net/index.php/SDK:User_Data Is also a good option, I'm starting to use it a lot lately. You can always create your custom VS implementation to keep working with Vectorscript.
  18. This is how symbols are designed to work. Only the definition is unique, all placed symbols are exact copies. The only way around, is to make your wrapper an object, or maybe your current object the parent of whatever you want to create. Then each object instance can be unique. Also, you can still save that object as a red symbol if you want it to appear in the resource browser as well.
  19. If you have Landmark or Designer there is a very good label object included, under the irrigation toolset.
  20. I suggest you to file a bug report.
  21. Well a step of 9 years is huge. It could be that some of the functionality changed. Such a big step will require you to retest all your plug-ins as some functions might have changed or deprecated. For what's worth, the developer wiki keeps track of changes between versions. Maybe the length used to be center to right and has changed into left to right effectively doubling the length. In that case just use aa/2.
  22. Actually the width is correct but your code only draws half the height: rect(0,-bb/2,aa,bb-bb/2); Should be. (width=aa, height=bb) rect(0,-height/2,width,height/2);
×
×
  • Create New...