Hi Guys,
Good day, is there a way to host a generic model by curve like add beam function but a generic model element instead?
Thanks
Hi Guys,
Good day, is there a way to host a generic model by curve like add beam function but a generic model element instead?
Thanks
The reason why I would like to host thru a curve because the revit family is like a beam but a penetration to a beam.
Thanks Japhy, it is similar to what you have there, will there be a way to select an existing line inside revit and assign a family type onto it? like add beam wherein you have to feed a curve and type to the component?
Kind regards,
Hi Joel, This might work with a generic model, I’ll put in a feature request. Looks like the only other method is for a line based detail component.
Beam Penetration - Circular Multi Beam.rfa (364 KB)
Thanks Japhy, what I am trying to achieve is select the center lines of the pipe from the link MEP model and then use to host my line-based family (void) then cut the beam.
cheers,
Hi Japhy,
I created a 2 points adaptive component for the void and I am trying to place these 2 points against the link pipe start and end points, is this possible?
Thanks
Hi Japhy,
Finally, it is working, the adaptive void family is aligned from the link MEP pipe and
the only disadvantage is you have to maintain the link model being loaded as if you
unloaded the link model, the adaptive void will disappear, but the advantage is the model
is auto updated.
kind regards.
Hi, Can you show what inside your Revit Python component? Thanks.
Hi Vu,
Please see details below:
import clr
clr.AddReference(‘System.Core’)
clr.AddReference(‘RhinoInside.Revit’)
clr.AddReference(‘RevitAPI’)
clr.AddReference(‘RevitAPIUI’)
from System import Enum
import rhinoscriptsyntax as rs
import Rhino
from Rhino import RhinoMath as RM
import RhinoInside
import Grasshopper
from Grasshopper.Kernel import GH_RuntimeMessageLevel as RML
from RhinoInside.Revit import Revit, Convert
from Autodesk.Revit import DB
from Autodesk.Revit import UI
import RhinoInside.Revit.Convert.Geometry.GeometryEncoder as GE
import RhinoInside.Revit.Convert.Geometry.GeometryDecoder as GD
REVIT_VERSION = Revit.ActiveUIApplication.Application.VersionNumber
doc = Revit.ActiveDBDocument
def show_warning(msg):
ghenv.Component.AddRuntimeMessage(RML.Warning, msg)
def show_error(msg):
ghenv.Component.AddRuntimeMessage(RML.Error, msg)
def show_remark(msg):
ghenv.Component.AddRuntimeMessage(RML.Remark, msg)
def coerce(item):
if isinstance(item, int):
return doc.GetElement(DB.ElementId(item))
elif isinstance(item, DB.Element):
return item
#OUT
if GO == 1:
# create and start the transaction
t = DB.Transaction(doc, "Transaction name here")
t.Start()
try:
# Change document here
DB.InstanceVoidCutUtils.AddInstanceVoidCut(doc, Solid, Void)
print()
# commit the changes after all changes has been made
t.Commit()
except Exception as txn_err:
# if any errors happen while changing the document, an exception is thrown
# make sure to print the exception message for debugging
show_error(str(txn_err))
# and rollback the changes made before error
t.RollBack()
Thanks. Can you upload your gh file ?
I am trying to cut the walls by the beam which from linked revit file (structural). Still cónsidering your method using the void family , or modify the walls profile.
Thanks.
Cutting Framing through link model_Test_V1.gh (17.4 KB)
Void_Adaptive.rfa (388 KB)
Please see attached working files, cheers.
Since v1.13 we have ‘Add Component (Curve)’ to add model line based components.
Hi Kike,
Good day, it will be nice to see a curve component like add beam for a line based family, it will be useful to have this one.
Cheers,
Joel
Thanks Japhy, what Rhino inside version is this?
Thanks.
The component was first added in v1.13
https://www.rhino3d.com/inside/revit/1.0/reference/release-notes#v1-13-rc3