-5

編集済み、以下を参照

音楽作成ソフトウェアで楽譜のグラフィックを表示するためのライブラリが必要です。これは Sibelius に似ています。基本的に、ユーザーが楽譜を作成し、アプリが MIDI 出力を送信します。

さまざまな理由から自分で実装する必要があるため、楽譜を表示するライブラリを探しているわけではありません。また、探しているライブラリはクロスプラットフォームである必要があります (少なくとも Windows と Linux で実行する必要があります)。

グラフィックはベクターベースか、「line(point1, point2);」などの関数で描画されます。

(続行する前に、私は C++ の初心者であり、私の経験のほとんどはインタープリター言語 (主に PureData と Processing) に関するものであることを述べさせてください)

今質問に:

  1. シンダーを見つけました。Cinder はこのタスクに適していると思いますか? いいえの場合は、2 と 3 をスキップできます。
  2. 私は OpenGL の経験がありません。Cinder が OpenGL のみを使用するのか、それともオンデマンドでのみ使用するのか、実際にはわかりませんでした。ここでの私の疑問は、OpenGL ライブラリを使用する場合、アプリケーションは専用のグラフィックス カードを搭載したコンピューターでしか実行できないということですか?
  3. Cinder には、Qt や GTK+ のような GUI を作成する機能がありません。Qt/GTK+/SDL/etc によって作成された別のウィンドウに Cinder を統合することは可能ですか? 通常の GUI (ボタン、メニューなど) が記譜グラフィック ウィンドウに統合されているSibeliusのようなものが必要です。
  4. Cinder が適切なオプションではない場合、その特定のアプリケーションのニーズに対して何をお勧めしますか? OpenCV? SDL? SFML?

編集:

これはトピック外としてマークされているようです。申し訳ありませんが、私はここに新しいです。この種の推奨を求める投稿をいくつか見たので、大丈夫だと思いました。そうですね、私は客観的で率直であるように努めます

質問:

楽譜グラフィックを描画する必要がありますが、低レベルのもの (Cinder、SDL、SFML、Ati-Grain など) を扱いたくありません。では、利用可能な他のテクノロジーは何ですか?つまり、他のオプションは何ですか?

4

1 に答える 1

0

あなたが説明していることは、多くの作業であり、あなたのようなプログラミング経験が限られている人にとっては不可能なことです. C++ は簡単な言語でも許される言語でもありません.構文を学習するだけではありません (自動ガベージ コレクションを備えた処理言語や類似の言語の場合のように) - メモリやその他のリソース、不変条件などを管理することも重要です。リンケージやコンパイルなどの複雑さは別として、コンピューターが低レベルでどのように機能するかを完全に理解している必要があります。

とにかく、私はあなたの質問に答えようとします:

  1. 燃えがらでこれを行うことができます-これはおそらく車輪を再発明する必要があることを意味します-しかし、あなたはできます. ただし、燃えがらがそのような作業に本当に適しているとは言えません。これは、高速化された 2D/3D コンピュータ グラフィックス用です。必要なのは、より一般的な GUI ライブラリ (おそらく QT?) です。midi サポートに関しては、とにかくこれについてはおそらく他のライブラリに依存する必要があります。

  2. 最近のほとんどのコンピューターは、openGL をサポートしています。繰り返しますが、やりたいことのためにopenGLは本当に必要ありません。

  3. はい、理論的にはこれを行うことができます - しかし、それは簡単ではなく、あなたがやりたいことには本当に必要ではありません.

  4. OpenCVは絶対にありません。これは画像処理用です。つまり、ラスター グラフィックスです。ベクター グラフィックスが必要です。OpenCV の Highgui は特定の処理で非常に遅いため、レンダリングには他のライブラリを使用する必要があります。他のライブラリの経験はありません。私の提案は、C ++よりもはるかに簡単なpython、luaAV、またはおそらくSuperCollider(ちなみに組み込みのmidiサポートを備えている)などのインタープリター言語を使用するか、オープンソースの楽譜の代替手段を検索することです(存在する場合) -> 既存のコードベースに基づいて独自のものをいつでも構築できます - 車輪の再発明は必要ありません...

于 2016-02-11T22:39:15.587 に答える