• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:http://csharpimage.blog60.fc2.com/b)

直線補間をC言語で記述したが結果が思う様にいかない

このQ&Aのポイント
  • C言語で直線補間を記述していますが、結果が思うようにいきません。
  • 座標を示す部分が問題かもしれませんが、どうすればいいのかわかりません。
  • 助言をいただける方がいれば、教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.1

xposの計算がデータ構造に合っていないのだと思われます。 一つの座標に対して、配列layerは3要素 (RGBでしょうか) を使っていますよね。たとえばlayer[i][12], layer[i][13], layer[i][14]で一組です。 xposとhokanXの計算はこのことを考慮していないように見えるので、xposの値が途中14.2になったりするとlayer[i][14], layer[i][15], layer[i][16]を組にしてアクセスします。これでは思うような結果が得られなくて当然です。 さらに、隣の座標をアクセスするのにlayer[i][(int)xpos+1+α]としている部分はlayer[i][(int)xpos+3+α]でなくてはいけないはずです。 データ構造を変えていいのであれば、layer[i][j], layer[i][j+1], layer[i][j+2]のような形ではなく、構造体の二重配列にしてlayer[i][j].r, layer[i][j].g, layer[i][j].bのようにアクセスすれば簡単になります。bufdataとrescaleも同様に。

momokotug
質問者

お礼

ありがとうございました☆

すると、全ての回答が全文表示されます。

関連するQ&A