Ridimensionare file .prm
Inviato: mer 24 lug 2013, 14:55
Se qualche utente di ARM volesse sapere come con quale principio si ridimensiona un oggetto contenuto in un file .prm o .m che dovrebbero avere la medesia forma può utilizzare questo pezzo di codice l'ho scritto in .net quindi è facile anche convertirlo in C# o C++ (Forse questo pezzo di codice non serve per chi li sa manipolare)
la casella di Testo TextBox1 contiene il fattore della scala
Codice: Seleziona tutto
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim RicercaConclusa As Boolean = False
Dim i As Integer
Dim ApriFile As New OpenFileDialog()
ApriFile.Filter = "Mesh Re-Volt(*.prm)|*.prm"
If ApriFile.ShowDialog() = DialogResult.Cancel Then
MsgBox("Non hai selezionato nessun file", vbExclamation, "Messaggio")
Exit Sub
End If
Dim FileArray() As Byte = My.Computer.FileSystem.ReadAllBytes(ApriFile.FileName)
Dim Start As Integer = (BitConverter.ToInt16(FileArray, 0)) * 60 + 4
For x = Start + 1 To FileArray.Length - 1 Step 24
For k = 0 To 8 Step 4
Dim Cordina As Single = (BitConverter.ToSingle(FileArray, x + k)) * Val(TextBox1.Text)
Dim ArrayCordinata() As Byte = (BitConverter.GetBytes(Cordina))
FileArray(x + k) = ArrayCordinata(0)
FileArray(x + k + 1) = ArrayCordinata(1)
FileArray(x + k + 2) = ArrayCordinata(2)
FileArray(x + k + 3) = ArrayCordinata(3)
Next k
Next x
My.Computer.FileSystem.WriteAllBytes(ApriFile.FileName, FileArray, False)
MsgBox("File scritto con successo", vbInformation, "Scrittura")
End Sub
Private Sub TextBox1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyUp
If e.KeyCode = 188 Then TextBox1.Clear()
End Sub
End Class