public mmMatrix(floatArray f) { for (int k = 0; k < 9; ++k) { m[k] = f.getitem(k); } }
public static floatArray toFloatArray(this Vector3f v) { floatArray f = new floatArray(3); f.setitem(0, v[0]); f.setitem(1, v[1]); f.setitem(2, v[2]); return(f); }
private void queriesButton_Click(object sender, EventArgs e) { mmapi_util.RemoteControl rc = new mmapi_util.RemoteControl(); rc.Initialize(); StoredCommands sc = new StoredCommands(); uint resultKey = sc.AppendQueryCommand_GetBoundingBox(); rc.ExecuteCommands(sc); floatArray min = new floatArray(3); floatArray max = new floatArray(3); sc.GetQueryResult_GetBoundingBox(resultKey, min.cast(), max.cast()); float minx = min.getitem(0); float miny = min.getitem(1); float minz = min.getitem(2); float maxx = max.getitem(0); float maxy = max.getitem(1); float maxz = max.getitem(2); Debug.WriteLine("got box"); rc.Shutdown(); }
public void ToWorld(Vector3f[] vScenePoints, int nBatchSize) { int nBatches = vScenePoints.Length / nBatchSize; uint[] keys = new uint[nBatchSize]; for (int j = 0; j <= nBatches; ++j) { StoredCommands sc = new StoredCommands(); int iStart = j * nBatchSize; int iUseSize = (j == nBatches) ? (vScenePoints.Length - nBatches * nBatchSize) : nBatchSize; for (int k = 0; k < iUseSize; ++k) { if (vScenePoints[iStart + k] != Vector3f.Invalid) { floatArray f = vScenePoints[iStart + k].toFloatArray(); keys[k] = sc.AppendQueryCommand_ConvertPointToWorld(f.cast()); } } ExecuteCommands(sc); for (int k = 0; k < iUseSize; ++k) { if (vScenePoints[iStart + k] != Vector3f.Invalid) { floatArray f = vScenePoints[iStart + k].toFloatArray(); sc.GetQueryResult_ConvertPointToScene(keys[k], f.cast()); vScenePoints[iStart + k] = g3Extensions.ToVector3f(f); } } } }
public floatArray toFloatArray() { floatArray f = new floatArray(3); f.setitem(0, v[0]); f.setitem(1, v[1]); f.setitem(2, v[2]); return(f); }
public Vector3 ToScene(Vector3 vWorld) { StoredCommands sc = new StoredCommands(); floatArray f = vWorld.toFloatArray(); uint key = sc.AppendQueryCommand_ConvertPointToScene(f.cast()); ExecuteCommands(sc); sc.GetQueryResult_ConvertPointToScene(key, f.cast()); return(new Vector3(f)); }
public Vector3f ToWorld(Vector3f vScene) { StoredCommands sc = new StoredCommands(); floatArray f = vScene.toFloatArray(); uint key = sc.AppendQueryCommand_ConvertPointToWorld(f.cast()); ExecuteCommands(sc); sc.GetQueryResult_ConvertPointToWorld(key, f.cast()); return(g3Extensions.ToVector3f(f)); }
public floatArray toFloatArray() { floatArray f = new floatArray(9); for (int k = 0; k < 9; ++k) { f.setitem(k, m[k]); } return(f); }
public void SelectionBoundingBox(ref Vector3 Min, ref Vector3 Max) { StoredCommands sc = new StoredCommands(); uint key = sc.AppendQueryCommand_GetBoundingBox(); ExecuteCommands(sc); floatArray min = new floatArray(3), max = new floatArray(3); sc.GetQueryResult_GetBoundingBox(key, min.cast(), max.cast()); Min.Set(min); Max.Set(max); }
public void ObjectBoundingBox(int objectID, ref AxisAlignedBox3f box) { StoredCommands sc = new StoredCommands(); uint key = sc.AppendQueryCommand_GetObjectBoundingBox(objectID); ExecuteCommands(sc); floatArray min = new floatArray(3), max = new floatArray(3); sc.GetQueryResult_GetBoundingBox(key, min.cast(), max.cast()); box.Min.Set(min); box.Max.Set(max); }
public Vector3f SelectedFacesCentroid() { StoredCommands sc = new StoredCommands(); uint key = sc.AppendQueryCommand_GetSelectedFacesCentroid(); ExecuteCommands(sc); floatArray c = new floatArray(3); sc.GetQueryResult_GetSelectedFacesCentroid(key, c.cast()); return(g3Extensions.ToVector3f(c)); }
public float ToScene(float fWorld) { StoredCommands sc = new StoredCommands(); uint key = sc.AppendQueryCommand_ConvertScalarToScene(fWorld); ExecuteCommands(sc); floatArray f = new floatArray(1); sc.GetQueryResult_ConvertScalarToScene(key, f.cast()); return(f.getitem(0)); }
private void InternalCallback(uint number, uint inputCount, uint outputCount, global::System.IntPtr inputs, global::System.IntPtr outputs) { float[] callbackInput = new float[inputCount]; float[] callbackOutput = new float[outputCount]; Callback(number, inputCount, outputCount, callbackInput, callbackOutput); using (floatArray inputArray = new floatArray(inputs, false)) using (floatArray outputArray = new floatArray(outputs, false)) { for (int i = 0; i < inputCount; i++) { inputArray.setitem(i, callbackInput[i]); } for (int i = 0; i < outputCount; i++) { outputArray.setitem(i, callbackOutput[i]); } } }
public static Vector3f ToVector3f(floatArray f) { return(new Vector3f(f.getitem(0), f.getitem(1), f.getitem(2))); }
public Vector3(floatArray f) { v[0] = f.getitem(0); v[1] = f.getitem(1); v[2] = f.getitem(2); }
public static void Set(this Vector3f v, floatArray f) { v.x = f.getitem(0); v.y = f.getitem(1); v.z = f.getitem(2); }
public void Set(floatArray f) { v[0] = f.getitem(0); v[1] = f.getitem(1); v[2] = f.getitem(2); }