예제 #1
1
  public static UVWTag GenerateUVW(BaseObject op, ref Fusee.Math.Core.Matrix4D /* constMatrix&_cstype */ opmg, TextureTag tp, ref Fusee.Math.Core.Matrix4D /* constMatrix&_cstype */ texopmg, BaseView view) {
    double[] adbl_opmg;
    unsafe {adbl_opmg = Fusee.Math.ArrayConversion.Convert.Matrix4DToArrayDoubleC4DLayout(opmg);    fixed (double *pdbl_opmg = adbl_opmg) {
    /* constMatrix&_csin_pre */
    double[] adbl_texopmg;
    unsafe {adbl_texopmg = Fusee.Math.ArrayConversion.Convert.Matrix4DToArrayDoubleC4DLayout(texopmg);    fixed (double *pdbl_texopmg = adbl_texopmg) {
    /* constMatrix&_csin_pre */
    try {
      IntPtr cPtr = C4dApiPINVOKE.GenerateUVW(BaseObject.getCPtr(op), (IntPtr) pdbl_opmg /* constMatrix&_csin */, TextureTag.getCPtr(tp), (IntPtr) pdbl_texopmg /* constMatrix&_csin */, BaseView.getCPtr(view));
      UVWTag ret = (cPtr == IntPtr.Zero) ? null : new UVWTag(cPtr, false);
      return ret;
    } finally {
        // NOP opmg = Fusee.Math.ArrayConversion.Convert.ArrayDoubleC4DLayoutToMatrix4D(pdbl_opmg);
        /* constMatrix&_csin_post */
        // NOP texopmg = Fusee.Math.ArrayConversion.Convert.ArrayDoubleC4DLayoutToMatrix4D(pdbl_texopmg);
        /* constMatrix&_csin_post */
    }
} } /* constMatrix&_csin_terminator */
} } /* constMatrix&_csin_terminator */
  }
예제 #2
0
 internal static HandleRef getCPtr(BaseView obj) {
   return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
 }