teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

追記

2021/05/25 15:32

投稿

XVK
XVK

スコア10

title CHANGED
File without changes
body CHANGED
@@ -25,4 +25,65 @@
25
25
 
26
26
  S字型のカーブをさせるための情報は
27
27
  http://marupeke296.com/TIPS_No19_interpolation.html
28
- が参考になったのですが今回のお椀型?の仕様に合う情報が欲しいです
28
+ が参考になったのですが今回のお椀型?の仕様に合う情報が欲しいです
29
+
30
+
31
+
32
+
33
+ ### 更に追記
34
+
35
+
36
+ 下記コードにて出力した点をプロットしたものが下記画像となります
37
+ a=0.1(緑)
38
+ a=0.25(赤)
39
+ a=0.4(水)
40
+
41
+
42
+ これが傾きの要件をみたしているのかはわからないのですが、これを線形補間で使えばもう十分かな感はあります
43
+ ただ、ソースのコメントにあるように分割時の右半分のYを求める係数がわからないため中央付近が異常に荒くなっています
44
+
45
+
46
+ ```ここに言語を入力
47
+ struct f2
48
+ {
49
+ float m_x;
50
+ float m_y;
51
+ };
52
+
53
+ f2 outf2[20];
54
+ int numout=0;
55
+
56
+ void saiki(int div, f2 v0, f2 v1, float a)
57
+ {
58
+ if(div){
59
+ float sax = v1.m_x - v0.m_x;//差x
60
+ float say = v1.m_y - v0.m_y;//差y
61
+ f2 center_vec;
62
+
63
+ center_vec.m_x = v0.m_x + sax*0.5f; //xは中間
64
+ center_vec.m_y = v0.m_y + say*(1.f-a); //yは1-aでブレンド
65
+
66
+ saiki(div-1, v0, center_vec, a);//左半分の再帰呼び出し
67
+ outf2[numout++] = center_vec;
68
+ //motomu(div-1, center_vec, v1, a);//右側分割が上手く行かない
69
+ }
70
+ else{
71
+ return;
72
+ }
73
+ }
74
+
75
+ void func()
76
+ {
77
+ float a = 0.25f;//掴んでいる点のx座標
78
+
79
+ f2 v0 = {0.f, 0.f};//原点
80
+ f2 v1 = {a, 1.f-a};//y=x上の点
81
+
82
+ saiki(5, v0, v1, a);
83
+ outf2[numout++] = v1;
84
+ //ここで出したoutf2は半分だけなのであとは手作業で鏡面写し
85
+ }
86
+
87
+ ```
88
+
89
+ ![イメージ説明](c51d4802ecc4f6fa31d0a2da7ccf16db.png)

1

追記

2021/05/25 15:32

投稿

XVK
XVK

スコア10

title CHANGED
File without changes
body CHANGED
@@ -15,4 +15,14 @@
15
15
 
16
16
  よろしくお願いいたします
17
17
 
18
- ![イメージ説明](3619293655cbf00e14379f178c3b3c14.png)
18
+ ![イメージ説明](3619293655cbf00e14379f178c3b3c14.png)
19
+
20
+ 追記です
21
+ 図では紫のグラフ(条件A)の点を掴んでいますが、これがy=xをまたぐ際に緑(条件B)の方に切り替えて使用します
22
+ またアニメーション用途のため、xは時間を表していて線形変化を緩急のある変化に変えるために使います
23
+ (例としてスケール初期値100%~終端200%として線形ではなくいきなり180%くらいまでデカくなったのちゆっくりに落ち着くといった動きなどを表現)
24
+ そのためyの範囲は0~1で収まるものを想定しています
25
+
26
+ S字型のカーブをさせるための情報は
27
+ http://marupeke296.com/TIPS_No19_interpolation.html
28
+ が参考になったのですが今回のお椀型?の仕様に合う情報が欲しいです