@ShynnSup wrote:
Hi people,
I am currently needing to insert every block definition within a document.
I found this: Which replaces every point with the same block. I tried to change it to instead of inserting the same block, go cycling along each block definition, but no luck so far.
' Replaces points with blocks Sub ReplacePointsWithBlocks ' Select points to replace with a block Dim arrObjects arrObjects = Rhino.GetObjects("Select points to replace with a block", 1, True, True) If Not IsArray(arrObjects) Then Exit Sub ' Get the names of all block definitions in the document Dim arrBlocks arrBlocks = Rhino.BlockNames(True) If Not IsArray(arrBlocks) Then Rhino.Print "No block definitions found in the document." Exit Sub End If ' Select a block name from a list Dim strBlock strBlock = Rhino.ListBox(arrBlocks, "Select block", "Replace Points") If IsNull(strBlock) Then Exit Sub ' Turn off redrawing (faster) Rhino.EnableRedraw True ' Process each selected point object Dim strObject, arrPoint For Each strObject In arrObjects ' Get the point object's coordinates arrPoint = Rhino.PointCoordinates(strObject) ' Insert the block at that location Rhino.InsertBlock strBlock, arrPoint Next ' Delete all of the point objects Rhino.DeleteObjects arrObjects ' Turn redrawing back on Rhino.EnableRedraw True End Sub
Posts: 6
Participants: 2