緑之庵(緑之杜)緑之庵(緑之杜)ぐうたらプログラマの不定期更新日記。最近さっぱり記事を書いていませんが、近々再開予定です。サークル名に合わせてタイトル修正しましたが、まだどちらにするか悩んでいます。ミーティングルームで開催しました。今回の申し込み者数も18人。一名来なかった方もいらっしゃいますが、前回同様、ほぼ満員ですね。今回も初参加の方や、わざわざ愛知からいらっしゃった方もいてうれしい限りです。Companyへ就職されました。現在、事務所を探したり、人員を探したりをされているそうです。組織として出来上がってはいませんが、今後の日本としてのアップストリームの活動が期待されます。就職に伴い、アップストリームの側がユーザーコミュニティの運営に携わるのは避けようということで、勉強会の主導をhermit4はじめ現在の勉強会メンバーで引きついていくことになります。お子さんが生まれたばかりで大変ということもあって、hermit4の方で告知や報告を担当しはじめましたので、特に大きく変わることもありませんけどね。今後、日本でのイベント開催も年末までにはやりたいなという意向はあるようなので、その際はユーザー会としてお手伝いも募集する事になるかと思います。ご協力の程、よろしくお願い致します。勉強タイムというわけで、その後は普段通り、もくもくと勉強タイムとなりました。途中で帰宅されて成果発表されなかった方もいますが、分る範囲でみなさんの成果報告まとめQMLのプロファイラと記述方法によるパフォーマンスの計測ドキュメントにはQMLについてこういう書き方は駄目ですよという情報がありますが、実際にその通り書いてみてプロファイルをしてみたそうです。Bindingsについては、loop内で何度も参照されるのとtemporary変数を作るのとでは相当時間差があるとの事。なんでか速度が出ないとお悩みの方は、ドキュメントを読んで、ぜひプロファイルしてみて下さい。qgroundcontrolを調べてました現在使っているドローン用のコントロールソフトの使い勝手が悪く、QGroundControlへの移行を考えているそうです。最近のドローンコントロール系はQtで書かれているものも多いそうです。本日は、ビルドが終了しデバッグができるところまでたどり着いたとの事。QGroundControlは、iOS/Androidの実装もあるそうで、今後に期待したいところです。今日はQtを使って開発した製品を持ってきたのでデモしておきます計測器や電源の開発を行っている会社で働いていて、今回製品にはじめてLinuxとQtとを採用したそうです。ため、色々つまずく事もあったそうで、ずいぶん苦労されたようですが、無事に製品リリースしたとの事。QtのおかげてGUIについては楽にできたそうです。はじめの製品こそ苦労したものの、次の製品開発の立ち上がりはうまくいっているようなので、今後が楽しみですね。やっていて奥行き推定とかをやるそうなのですが、とりあえずカメラ位置調整ツールを作ろうとしています。5.2が部分的に実装されているだけだったので苦労しているそうです。今回はOSを入れたところで時間切れとなりました。待ち時間の間、仕事柄組込みでQtを使っているので軽いインジゲータを実装していました。QtModelingの調査をしていました今回はQtModelingを使ってみようとソースコードを入手してコンパイルしようとしていましたが、うまくいきませんでした。一部のコードでC++1zを要求しているようで、XCodeのバージョンが少し前の物なので対応していないことが原因の模様。XCodeを上げるところからやらないと駄目ですかねぇ・・・ということだそうです。OSへの移植をしたいと考えていましたが、後者まではたどり着きませんでした。日本語キーボードの件は、設定ツールと呼び出している内容を調べたところ、設定項目が抜けているだけとわかりました。設定ツールのQML内のリストにエントリーを追加したら設定できるようになりました。日本語のキーでキーコードが対応していないものについてはシンボルを追加し、パッケージングを行い、OpenReposのリポジトリにアップするところまで行ったとの事。Sailfish談義したくて来たって方に話しかけられっぱなしだったにも関わらずなかなか優秀な成果を出していますよね。FontManagerは、実は朝木さんが実装したものだそうです。近いうちにSRAの会場も借りてみる予定なので、その時来られるといざというときは質問できるかも。制作中のエディタで日本語の単語移動を実装していましたQtでエディタを鋭意作成中なのですが、利用していたQPlainTextEditでは日本語の単語単位移動できないことがわかり対応していました。最初は、QTextBoundaryFinderを使っていたのですが、カタカナ以外はうまく移動できないとの事。調べた結果、QTextBoundaryFinderはUnicodeの規格に則って作られているのですが、日本語だとそれでは足りないそうです。ICUは辞書も使い日本語の単語区切りができるので、ICUのコードを呼び出すようにカスタムして対応できたとの事。問題は、辞書ファイルが存外巨大で、フットプリントが大きいということで、悩ましい感じですよねぇ。safeではない文字を変換結果に含んでしまうのですが、そのせいで数日ハマったとの事。atobが対応していないだけなことが判明。いうわけで、atobにオプションを渡せるようにAPIを変更していたそうです。作ったアプリのデプロイ方法を調べていました作ったアプリをどうやってデプロイしたものかということで、調査していたそうです。windeployqtを使えば簡単だよと聞いたけど、動かないそうで。windeployqtは、必要なQtライブラリはかき集めてくれるのですが、残念ながらQtライブラリが必要なライブラリは探し出してくれないのです。ドキュメントを読んでみようと思っているとの事。Go言語などに比べるとデプロイが難しくて面倒だなぁとのご意見も。確かに、Qt自体のライブラリ数も多い上に、Qtが必要とするライブラリも多いですからね。Linuxともそれぞれ違いますし。一応、Windowsについては、面倒を感じているのでバイナリを解析しながら必要なライブラリの一覧を作れるツールをhermit4が鋭意開発中なのですが、メインの仕事ではないのでだいぶ遅延しています。qmake本書きが落ち着いたらなんとかします。挫折していました先月に引き続きD-busを触っていました。わかりやすいサンプルを作りたいと思ってがんばっていたのですが、想定した方法で実現できず挫折しましたとの事。その後、仕事の方で問題になっていた、Qt5.6からstackを連続で呼ぶと落ちるという現象を追いかけようと目標を変えたのですが、なんとこちらは再現せずという結果に。再現しなければ解決もできませんからねぇ・・・。挫折して終わったそうですが、そういう日もあります。めげずに頑張ってください。Physicsの調査をしていましたやわらかbodyの物理演算について調査していたとの事です。お隣に詳しい方がいたので、色々話を聞けて、PhysXを使えばCUDAで物理演算してくれるらしくて、10-20倍位早くなるようです。これをQtから使えるようにするには、ちょっと工夫しないと動かないらしいという事までは理解しましたとの事。Bodyだと計算に時間がかかってしまうので、GPUで演算できると早くなるのではないかなぁと期待しているそうです。Creator(VLMC)をSceneで実装されているものをQMLへ書き直すというのをやりたいと思っているそうです。ここ最近色々コミットしているのですが、今日はリファクタリングに明け暮れましたとの事。今後の活躍に期待します。QtIFW本の続編のレビューをしていました理ログの理音伊織さんの新刊のレビューを続けています。実際手を動かしているところで、あとちょっとで完了予定です。内容は、コントロールスクリプトを使った自動インストールの方法となります。当落発表はまだですが、技術書典に応募中なので、当選すれば6月25日に秋葉原で販売予定です。懇親会お借りしている部屋の掃除の後、懇親会へ。今回は、いつものお店が空いていてすんなり入れました。Japanの現状を聞いたり、今の日本の技術について話したり、わいのわいのやって解散となりました。ミーティングルームで開催しました。今回の申し込み者数は18人。会議室が20人マックスですので、だいぶ一杯になってきました。残念ながらhermit4は遅刻しましたので、自己紹介は途中からしか聞けていませんが、今回は初参加の方がちらほらといらっしゃいました。Tokyo/Springの報告をしてきました。インフルエンザで急遽参加できなかったAuguestさんはずいぶん気にされていたようですが、大丈夫、無事に出展してきましたよと報告してきました。スパイダーのデモ今回は初参加の方も多いとのことで、会場をお貸し下さっているPTPさんのスパイダーという製品のデモが行われました。QMLが出たばかりの頃だったので、C++で作られているバージョンだそうですが、UIはかっこ良く、パフォーマンスもよく動いていいですよね、スパイダー。PTPさんではQtプログラマーも熱烈募集中のようです。成果発表というわけで、その後は普段通り、もくもくと勉強タイムとなりました。Qtのセットアップで終わってしまいました一日前に届いたPCをなんとかセットアップまで終えて来られたそうなのですが、なんとインストールしたKitが足りていななかった事がわかり、Qtを再セットアップをしたところ、セットアップが終わらず・・・(他の方の成果発表中にセットアップが終わったようです)、こんなものを作りたいという案を取りまとめて終わったそうです。車が趣味の方で、車のデータを色々やって遊ぶ予定との事で、今後が楽しみですね。5.6.0リリース」の記事の作成にとりかかったものの終わらなかったとの事です。とりまとめが楽しみですね。コラージュ療法用アプリのメンテナンスを続けていました背景画像を固定する機能を追加しました。あとは背景の台紙の色の選択機能とグラデーション周りの設定機能も追加しています。現在は、大きな画像の編集と保存時に時間がかかりすぎるので、マルチスレッド化しようとあれこれ挑戦中のようです。今月末には早稲田大学の方にお渡しするとのことで、最後の大詰めの作業のようです。原因のつかめない不具合がいくつか残っているということでそれが少し気がかりのようですが、早く原因が特定出来ると良いですね。トラブルシューティング前回参加した時に教えてもらった内容を実施していたのですが、Qtにバグがあるようで、先に進みませんでした。VFBをX11で動かすことを教えてもらったので、今後はそちらを試す予定です。いうことで、苦労が続いているようです。良い解決策が見つかると良いですねぇ。久しぶりに仕事を離れた何かを作ってみようかなと、EAで生成したモデルをパースするツールの作成の検討中。関連で調査している際にQtModelingというのがある事を発見。Editorというプラグインがあるようですね。自作の文字幅チェックツールをLinuxで作っていたものをWindowsに移植してました今日見せてもらったスパイダー(PTPの製品)のUIに触発されて、ちょっとアニメーションチックに動かしたいと思って、朝木さんのご協力のもとボタンがくるくる回るようになりました。いうことで、ボタンを押すとくるくるって良くまわってました。QFontMetricsは、フォントに対象言語の無い場合のfall-backを設定した場合に文字幅を正しくだせていないようで、注意が必要との事でした。お使いの方はご注意下さい。D-busの勉強をしていましたしばらく名古屋に帰っていましたが、このたびPTP社に転職して戻ってきたとの事です。今回は、QDBusの勉強のために、色々試していたようで、とりあえずQDateTimeのデータをアプリケーション間で受け渡し、3つのアプリでデータを同期するサンプルを作成されていたようです。PTP社での活躍頑張って下さい。今後、会場係とか、色々よろしくお願いします。最近趣味でFXを始めたのですが、いきなり5万負けてしまって、なんとか勝てるようになるアプリが作れないかなぁと検討中との事です。方法としてはアメリカの発表を調べる方法とチャートから傾向を読む方法があるようですが、よく分からないのでチャートを読む方法を考えているそうで、とりあえず、チャートの取り込み機能部と、レートの上がり下がりでアラートをあげる機能を実装したとの事。現在は、移動平均の算出方法を調べてみているところだそうです。儲かったら、美味しいおやつの持ち込み期待してますとか言っておいてみよう。AndroidアプリをQt化してiPhoneで動かしたい以前Android向けに自作したアメリカの服サイズを日本のサイズに変換するツールをiPhoneでも動かしたいのでQtでiPhoneアプリを作る環境構築をしていたとの事です。なにやら苦労されていたようですが、無事に環境は整ったようですので、移植頑張って下さい。Controlsの最新版を試してみたいと思い、ソースコードのzip版をダウンロードしたのですが、ビルドが出来なくて悩んでたとの事。zip版はWindowsで文字コード等の問題があって、ビルドできなかったそうで、tar.gzの方をダウンロードしたらビルドが始まったとの事です。ビルド待ち中に色々みていたそうですが、1.0と2.0はずいぶんと作るも違っているらしいです。1.0までは部品一つが結構複雑に作られていたものが、現在はずいぶんシンプルになっているとのことで、コレならパフォーマンスも期待出来るのではって事なので、興味深いですよね。Ioriさんあたりが、さっくり同人誌で新しいバージョンについて書いてくれないかなぁ・・・。先月に引き続き時計アプリを作成していますお気に入りのPalmの時計アプリの移植を続けているとの事です。今日はカレンダー部分とタイマーを作成していたとの事で、着実に先に進んでいるようですね。inchに表示するそうなので、完成が楽しみです。Qt+OpenGL+Bulletのビデオを見ながら勉強していました以前、名古屋の勉強会で行われたビデオを見ていたそうです。後になってわかったのですが、かなり古い情報だったらしくて、Qt3D等も現在とは全く違うものだったようです。ちなみに、この頃の情報だとBulletがQt5に入るという事で、実際に一時期入れられようとしていたようなのですが、現在は抜かれているようです。Qt3D自体を大幅見直ししている途上ですから、将来また導入が検討されるといいですよね。Android上でQMLの動作確認していました昨日環境を整えたばかりだそうで、QMLのアプリのピンチイン・ピンチアウトがきちんと動作するのか確認していたそうです。動いていたようで何よりです。自作のメディアプレイヤーを作成中Androidで動かす前にPCで動かしていたそうです。今日はSQLiteに書かれている情報の読み込みとMP3の音が出せるところまでは行けたのですが、タイトルが取れず調査中との事で、うまく行くと良いですね。本当はゲームを作成したいと思っていたのですが、ゲームの方は、QMLの課題にぶち当たってしまって現在止まっています・・・とのことで少しみんなでコード見ていました。設定をグローバルで行っているのが問題で、個別に持たせるべきとの話でした。アドバイスとして、QMLでは、バインディングと代入の違いは面倒くさいので、その辺りを気をつけてくださいとの話となりました。次の製品もめでたくQtを使えることになったので、それに向けての準備をしていましたというわけで、製品の紹介等をされていましたが、どこまで書いて良いのか確認していないので割愛しますね。今回はQtもLinuxも初採用との事で色々苦労されていたようですが、実りがあって何よりです。次の製品もうまくいくと良いですね。スパイダーの再生エンジンの設計をがりがり書いていましたどうやら、PTPの会場係は「仕事」として会社に認知されたそうで、休日出勤扱いだそうです。お世話になっています。休日出勤だからか、お仕事の方をされていたようで。ご迷惑をおかけしてすいません。会場についてはSRAさんも使えそうということで、一社の負担がすくなくなるよう、今度お試しで利用させてもらう算段をつけていますので、コレからもどうぞよろしくお願いします。Qtのパッチを作成していましたビルド時にconfigureの--no-guiが例によってうまく動作しなくなっていたそうで、パッチを作成していたそうです。5.7で作りが違うそうで、2種類パッチ作成ということで、コントリビュートおつかれさまです。僕もそろそろQtにもパッチ書くようにならないといけないかなぁ・・・。Qtの第三弾の作成に取りかかっているとの事で、今回はインストーラの自動インストール周りのお話です。これは興味のある人結構いるでしょうから、レビュー頑張っておきます。こちらもだいぶ参加者が増えてきましたが、今回はいつもの鬼へいがいっぱいでして、2件回って3件目のお店に入りました。そらみみさんのドールのお話と、コミケの話題とで盛り上がって、1次会終了。hermit4は確定申告のつかれと溜まった家事とで疲れ気味だったので、一次会で撤収させていただきました。いうわけで、今月も皆それぞれもくもくとQt関係の勉強を楽しみました。来月もよろしくお願い致します。勉強会活動報告2016年2月28日日曜日ガルパンはいいぞなんて話をつぶやいたせいか、おすすめされたhermit4です。Offらしいので、買うまでに至って無かったけど映画見ちゃってやっぱり欲しくなったあなたは、今がチャンスなのかも。明日が誕生日なので、全部購入し、2日かけて夜更かしして全部見直したのはここだけの秘密です。Japan文系出身のなんちゃってプログラマーです。C++、苦手な言語はLisp(カッコが多すぎて目で追えないので)。基本的にミドル部分中心になりつつありますが、なんでも屋的なくらいの範囲にかけて広く、できるだけ深く手を出すようにしています。最近は、趣味的にはQtとAndroidに注目しています。専門家というよりは、特定の分野、特定の技術、特定の言語にとらわれず、オールマイティーに生きられるそんなエンジニアを目指して行きたいなと思っています。ちなみに、アニメやファンタジー、ライトノベルも大好きなわりとオタク系な残念な人です。