Site Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

it:rhino:weighobjectsrvb [2015/09/14] (current)
Line 1: Line 1:
 +====== Weight Objects ======
 +
 +
 +
 +> **Indietro:​** //Torna alla pagina [[rhino:​rhinoautov3scriptsanalysis|Rhino 3 - Scripts - Analisi e Misure]]//
 +
 +> **Note:** //Lo script è stato fatto per calcolare il peso di un singolo o più oggetti moltiplicando il volume totale per il peso specifico. Fare attenzione all'​unità di misura del disegno e del peso specifico (quello di default è pari ad un mm cubo di Ferro)//
 +
 +> **Istruzioni:​** //lanciare lo script, inserire o confermare il peso specifico, selezionare le polisuperfici/​superfici chiuse e confermare la selezione.//​
 +
 +{@
 +
 +Sub Volumx
 +
 +Dim VolNum, Pspec, Pesospec, x, Peso, PesoTot
 +
 +Dim ArrObjects(),​ strobject, selobject, ArrVol
 +
 +   ​Pesospec=Rhino.GetDocumentData("​RMApspec","​pespec"​)
 +     If (VarType(Pesospec))=vbNull Then Pesospec=0.00785
 +   Pspec = Rhino.GetReal("​Peso specifico <" & Pesospec & "> enter per confermare"​)
 +     If (VarType(Pspec))=vbNull Then Pspec=Pesospec
 +
 +   i=0
 +   ​selobject = Rhino.GetObject("​Selezionare le polisuperfici o superfici chiuse da pesare",​ 8+16)
 +   While VarType(selobject) = vbstring
 +
 +    If Rhino.IsObjectSolid (selobject) Then
 +
 +     ReDim Preserve ArrObjects(i)
 +     ​Arrobjects(i) = selobject
 +     ​Rhino.LockObject selobject
 +     i=i+1
 +     ​selobject = Rhino.GetObject("​Selezionare le polisuperfici o superfici chiuse da pesare",​ 8+16)
 +
 +    Else
 +
 +     ​Rhino.MessageBeep 2
 +     ​Rhino.Print "La Polisuperficie o superficie non è chiusa"​
 +     ​selobject = Rhino.GetObject("​Selezionare le polisuperfici o superfici chiuse da pesare",​ 8+16)
 +
 +    End If
 +
 +   Wend
 +
 +   ​Pesotot=0
 +
 +  If IsArray(Arrobjects) Then
 +  Rhino.Command("​_SetredrawOff"​)
 +   For Each strobject In arrobjects
 +   ​Rhino.Command("​_Selnone"​)
 +   ​Rhino.UnlockObject Strobject
 +   ​ArrVol=Rhino.SurfaceVolume(Strobject)
 +   ​VolNum=Cstr(ArrVol(0))
 +   ​Volnum=Replace(Volnum,​ , )
 +' ​ Disabilitare la riga successiva anteponendo un apostrofo per impostazioni inglesi
 +   ​Volnum=Replace(Volnum,​ "​.",​ ","​)
 +   ​Peso=(Volnum*Pspec)/​1000
 +   ​Peso=FormatNumber(Peso,​ 3, -1, 0, 0)
 +   ​PesoTot=Pesotot+Peso
 +   Next
 +
 +'​****** Modifica la sezione seguente per le scritte che appaiono nell'​ultima finestra ******
 +
 +   ​x=Rhino.MessageBox("​Peso = " & Cstr(PesoTot) & " Kg",​0,"​Peso Teorico"​)
 +
 +'​*****************************************************************************
 +  Rhino.Command("​_SelNone"​)
 +  Rhino.Command("​_SetredrawOn"​)
 +Else
 +
 +   ​ExitSub
 +End If
 +
 +End Sub
 +
 +Volumx
 +
 +}@
 +
 +
 +
  
it/rhino/weighobjectsrvb.txt · Last modified: 2015/09/14 (external edit)