ベジエ曲線
BS_100.igs.txt
TEST IGES 126 and 100 S 1
1H,,1H;,14HTEST_IGES_2018,32HC:\Users\Iwao\Desktop\BS_126.igs, G 1
20HTest_IGES_2018_02_01,21HTest_IGES__2018_02_01,16,38,6,308,15, G 2
7Hunknown,1.000000,2,2HMM,32767,32.767000,15H20180124.161415,0.000001, G 3
47.500002,7Hunknown,7Hunknown,11,0,15H20180124.161415; G 4
000 1 0 0 1 0 0 000000000D 1
000 0 1 1 0 0D 2
126 2 0 0 2 0 0 000000000D 3
126 0 2 6 0 0D 4
100 8 0 0 3 0 0 000000000D 5
100 0 3 1 0 0D 6
000, ; 1P 1
126,2,2,0,0,1,0,0.0,0.0,0.0,1.0,1.0,1.0, 3P 2
1.0,0.7071067811865,1.0, 3P 3
0.0,0.0,0.0, 3P 4
0.0,20.,0.0, 3P 5
20.,20.,0.0, 3P 6
0.0,1.0,0.0,0.0,1.0; 3P 7
100,0.0,20.0,0.0,0.1,0.0,0.1,0.0; 5P 8
S 1G 4D 6P 8 T 1
126,
2, K
2, M
0,0,1,0, PROP
0., 0., 0., T(-2,-1, 0) -M
1., 1., 1., 1, 2, 3 N+M N = 1+K-M = 1+2-2 = 1
1., 0.7071, 1., W(0) ... W(K)
0.0, 0.0, 0.0, X Y Z (0)
0.0, 20.0, 0.0, (1)
20.0, 20.0, 0.0, (2) K
0.0, 1.0, V(0) V(1)
0.0, 0.0, 1.0 ; NORM
Kodatuno BODY.cpp より
prop 0 0 1 0
K , M は中心角の大きさにより異なる
ノットベクトルは,
0 0 0 1 1 1
0 0 0 0.50 0.50 1 1 1
0 0 0 0.33 0.33 0.66 0.66 1 1 1
0 0 0 0.25 0.25 0.50 0.50 0.75 0.75 1 1 1
Weight は,
for(i=0; i<K; i++){
if (i % 2 == 0) { NurbsC[NurbsCount].W[i] = 1.; }
else if(i % 2 == 1) { NurbsC[NurbsCount].W[i] = sqrt(2.0)/2; }
}
制御点を求める方法も面倒?
広告