翻译成C语言 SUBROUTINE NOLXYZEZXXYYZZ IMPLICIT REAL8A-HO-Z DIMENSION EZ3XX4YY4ZZ4 DIMENSION E313E423 E311=XX3-XX1 E312=YY3-YY1 E313=ZZ3-ZZ1 E421=XX4-XX2
#include <stdio.h> #include <math.h>
void NOLXYZ(double EZ[], double XX[], double YY[], double ZZ[]) { double E31[3], E42[3];
E31[0] = XX[2] - XX[0];
E31[1] = YY[2] - YY[0];
E31[2] = ZZ[2] - ZZ[0];
E42[0] = XX[3] - XX[1];
E42[1] = YY[3] - YY[1];
E42[2] = ZZ[3] - ZZ[1];
EZ[0] = E31[1] * E42[2] - E42[1] * E31[2];
EZ[1] = E31[2] * E42[0] - E42[2] * E31[0];
EZ[2] = E31[0] * E42[1] - E42[0] * E31[1];
double DEX = sqrt(EZ[0] * EZ[0] + EZ[1] * EZ[1] + EZ[2] * EZ[2] + 1.0e-80);
EZ[0] = EZ[0] / DEX;
EZ[1] = EZ[1] / DEX;
EZ[2] = EZ[2] / DEX;
}
int main() { double EZ[3], XX[4], YY[4], ZZ[4];
// Assign values to EZ, XX, YY, ZZ
NOLXYZ(EZ, XX, YY, ZZ);
// Print EZ values
return 0;
原文地址: http://www.cveoy.top/t/topic/hOlI 著作权归作者所有。请勿转载和采集!