• Content count

  • Joined

  • Last visited

Community Reputation

11 Good


About Hippocode

  • Rank
    500 Club
  1. Assuming you have one instance of this symbol selected, you can use the active handle to retrieve the values, get the handle to the definition itself and overwrite them. From then on, any new placed instance will use the updated record information.
  2. A light object is not a parametric object, thus any data is not saved into a record. Instead, everything is saved as object properties. You can find the appropriate constants in the SDK definitions. Search for ovLight. It could be that just like in the SDK, VS also has wrapper functions available.
  3. Typically they should follow a logically order of events. kObjectExternalReset is called when an object reset is caused by another object. I assume the first reset is yours. For some reason, an additional reset by something else in the background is causing the other events. Some actions can cause multiple events because sometimes we want to do something on a specific moment when an object is changing. It could be that modifying text does that. I wouldn't worry to much about it unless you end up with unwanted behaviour.
  4. Is this a custom object, or are you referring to symbols ? Default symbols have no way of autolinking fields. You can do this with a custom object using GetRField, SetRField.
  5. You can change your view to 2D and reset it after you run that function.
  6. I have no idea if it's possible with the default tools. We do have this feature enabled on our own plug-ins. Those annotations are symbol based and scale based on the pipe diameter which will show you that circle with the exact size in 2D. For other specific variants (Tee up / down) etc you can specify different symbols.
  7. Hi I have objects that reference others by an internal index. Basically it's a list of objects A that reference any other object (any type) named B by their internal index. This reference is saved into a Sint32 Parameter. When referencing this file into an other document (e.g. layer viewport), the references are broken because they assume the indexes remain the same, which they don't. Is there any way to find out the new indexes relative to the other document so I can correct the internal indexes to their correct values?
  8. I'm in need of a custom hidden group, similar to the profile/path group available in plug-ins. (I can't use those for this specific object as they are both in use already) Am I correct assuming the path and profile group are groups attached as aux objects with a specific data tag for them to be recognised? Is the content of such groups hidden by default or do I need to do something with it so it doesn't show as part of the object?
  9. This should get you started. Modify the <> wrappers to the exact name, recordname and value you want to modify. Note that you might need to native object name which can differ from the visual localised objectname. Procedure EditRecordFormat; VAR ObjectName :String; RecordFormat: Handle; ObjectType: Integer; BEGIN ObjectName := '<ObjectName>'; RecordFormat := NIL; RecordFormat := GetObject(ObjectName); IF (RecordFormat <> NIL) THEN BEGIN ObjectType := GetTypeN(RecordFormat); IF (ObjectType = 47) THEN BEGIN SetRField(RecordFormat, ObjectName, '<FieldName>','<FieldValue>'); END; END; END; RUN(EditRecordFormat);
  10. Normaly you can't modify any tool defaults with VS. What you can do is modify the default parametric record used in creating a new object. The parametric record is unique and can be retrieved with the unique name of the object. You can get the handle with GetNamedObject or some similar function taking a string. The normal Get/Set record field functions will work on this handle.
  11. From looking at your screen I would think the VWX truss lacing is made with a curve split in many parts, while you have a continous curve. It could also be the weight of your nurbs points make it look so rounded.
  12. I'm looking for some designers to test our new "Provision for voids" manager to provide feedback. You can reply here, by pm or by mail if interested. This video is a small teaser what it's about, there is however more to discover. Create voids (clash intersections) based on predefined sets of your choice (any object, including IFC entities). The idea is that once the Voids are created, they can be managed and used throughout the whole design process as a communication tool. These voids will automatically manage the required holes in walls and slabs. We are working on import/export functionality which enables collaboration beyond the scope of a document.
  13. I'm working on the ability of drag and drop accessories on MEP networks. Accessories will be a combination of a symbol and the required connectors for it to connect to the MEP network. There is already a basic dragging implementation where you can stretch parts of a network, but not in all situations. It will be improved though. When right clicking a segment you can set it's slope, also when drawing new segments. It could be it's not the complete solution you are after. You can also draw from invert, bottom or top as centerline.
  14. I find that the best method. This is also the way we create our pipes/ducts. (https://www.youtube.com/watch?v=zHELdSR75tA) On the OIP you can select a material, sizes and a shape to create any circle, rectangle or oval profile including thickness based on the material sizes (hollow).
  15. It depends if your symbol is supposed to by hybrid, 2D or 3D. If you only have 3D content you should place the text in the 3D container as well, otherwise the symbol becomes hybrid and your text is the 2D part. You can play around with it a bit. You do not need to copy the text from one container to another if you placed it wrong, if you just modify the layer plane or whatever it's called it's moved automatically.