ciao,
aparte eseguire tutto in modo manuale e reiterando la sequenza…
esiste un comando per velocizzare la selezione di uno o più layer (senza il loro contenuto) e copiarli in automatico in uno o più layer già presenti nel file stesso?
esempio:
ho il layer “1”, “2” e “3” e li voglio replicare come copie sotto i layer “pippo”, “pluto” e “paperino”
Questa definizione rinomina i layer già duplicati con l’apposito comando Rhino quindi non so se può andar bene.
Necessario il plugin Human.
Lo script c# non è farina del mio sacco. rename layer.gh (12,7 KB)
Ciao Leopoldo, grazie per la segnalazione ma non è quello che cerco; sarebbe utile un piccolo script (che purtroppo non saprei scrivere) dove una volta richiamato da un tasto editato, il promt mi chiede di selezionare i layer da copiare, seleziono e con tasto dx chiudo la selezione, il prompt mi chiede i layer sotto cui andare a mettere le copie dei layer precedentemente selezionati
Option Explicit
'Script written by Lucio Zadra
'Script version giovedì 29 agosto 2024 16:03:43
Call Main()
Sub Main()
Dim Layers, CopyLayer, PasteLayer, NameLayer, LayerColor
Layers = Rhino.LayerNames
If IsArray(Layers) Then
CopyLayer = Rhino.GetLayers("Seleziona i Layer da copiare")
If IsArray(CopyLayer) Then
PasteLayer = Rhino.GetLayer("Seleziona sotto quale layer vuoi copiare")
If Not isNull(PasteLayer) Then
For Each NameLayer In CopyLayer
LayerColor = Rhino.LayerColor(NameLayer)
Rhino.AddLayer PasteLayer & "::" & NameLayer, LayerColor
Next
End If
End If
End If
End Sub
Ah, beh, e io che ho fatto apposta a far selezionare un solo layer per essere sicuro che uno non sbagliasse…
Option Explicit
'Script written by Lucio Zadra
'Script version giovedì 29 agosto 2024 16:03:43
Call Main()
Sub Main()
Dim Layers, CopyLayer, PasteLayer, NameLayer, ParentLayer, LayerColor
Layers = Rhino.LayerNames
If IsArray(Layers) Then
CopyLayer = Rhino.GetLayers("Seleziona i Layer da copiare")
If IsArray(CopyLayer) Then
PasteLayer = Rhino.GetLayers("Seleziona sotto quali layer vuoi copiare")
If Not isNull(PasteLayer) Then
For Each ParentLayer In Pastelayer
For Each NameLayer In CopyLayer
LayerColor = Rhino.LayerColor(NameLayer)
Rhino.AddLayer ParentLayer & "::" & NameLayer, LayerColor
Next
Next
End If
End If
End If
End Sub