どうすればprecisionを定数で指定してfreadを実行することができますか?
1 view (last 30 days)
Show older comments
MATLAB Coderを使ってコードをC++に変換したいと思っています.
その途中でエラーが出て,「コード内のfreadへの入力が定数ではない」という旨が表示されました.
おそらく,数値の読み取り方の指定であるprecisionが問題だと考えています.
コードでは,
PointCloudData = fread(fp, [numFields npoints], format);
と入力しています.このformatは'*float32'なのですが,これをどうすれば定数として入力できるでしょうか.
自分で調べてclassdefのページ(https://jp.mathworks.com/help/matlab/matlab_oop/properties-with-constant-values.html)も見てみましたが,使い方がよくわかりませんでした.
よろしくお願いいたします.
0 Comments
Accepted Answer
Kazuya
on 30 Oct 2019
PointCloudData = fread(fp, [numFields npoints], format);
を
PointCloudData = fread(fp, [numFields npoints], '*float32');
と format 部分を直書きで書いてやると通るかもしれません。ランタイムに変わりうる変数 format を使うと NG という意味のエラーかと思います。
More Answers (0)
See Also
Categories
Find more on コンピューター ビジョンと Simulink in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!