去年はシールの種類が0.5から2.5点の5種類でしたが、今年は3点シールが復活して6種類です。
(3点シールはダブルソフト専用?)
画像認識に使用するサンプルを購入、プログラムを修正、公開できました。
気が向いたらアプリで遊んでみてください。
食べきれないパンは冷凍保存しました。
去年はシールの種類が0.5から2.5点の5種類でしたが、今年は3点シールが復活して6種類です。
(3点シールはダブルソフト専用?)
画像認識に使用するサンプルを購入、プログラムを修正、公開できました。
気が向いたらアプリで遊んでみてください。
食べきれないパンは冷凍保存しました。
Inkscapeで出力したSVGデータをblenderで読み込むと、一部が欠けていたりなど
正常に処理されていない場合です
具体的には
欠けている、割れている、一部が表示されない状態です
点などは残っているのでblender上で根性修復は可能ですがやりたくありません
このSVGデータはブラウザなどでは正常に表示されます
他ソフトで再変換などを行っても改善されなかったのですが、単純に少しだけ回転させたら治りました
15度回転させます、90度や180度、水平や拡大等では効果が無い場合がありました
blender上で角度を治すと思うので分かり易い角度が良いと思います
正常に取り込めました
余計な書き込み
前回の 3Dプリンターでプリント基板自作の覚え書き のおまけです
96 dpiでラスター化するとボケます
この画像をベクター化すると味のある線になります
dpiを高くすれば精度が上がります
本編の1200dpi(下画像)はモノクロ印刷で使用される解像度を何となく指定しています
普段使用しているのは2400dpiです
PDFを何もせずにSVG変換してblenderに放り込むとこうなります
ここから修正する場合、数が多いと処理が大変です
inkscapeでパスの統合などを駆使すれば、より少ないアンカーポイントで完璧なデータができるとは思うけど、パスを選択するのが面倒
移動したい対象の上でメニュー
Move to Layer(他のレイヤーへ移動)を選択
自分のレイヤーを選べばリスト先頭に移動、もしくは適当なレイヤーへ移動させる
ちょっとした基板の作成はレーザープリンターを使用していたのですが、プリンターの劣化かトナーののりが悪かったので3Dプリンターをプロッターとして使用する方法を試した時のメモ書きです
ちなみにレーザープリンターのほうが手間がかからず、完成品もきれいです(個人的見解)
国土地理院謹製のblind_mapなら、画像からSTLを出力できます
今回KiCadを使用しています
サンプルとして、ブレッドボード用の某ゲームコントローラー風のボタンを作成しました
生基板の切れ端(16ミリ×30ミリ)を使用する予定なので詰め込み気味です
(印刷時には更に詰め込みました)
表面(F.Cu)を出力
3Dモデリングソフトが取り込める形式としてSVGを作成します
PDF形式もSVG同様にベクターデータを扱いますが、単一のパスレイヤーに変換した方が便利なのでその処理も行います
InkscapeにPDFファイルをインポート
背後にある背景用の白矩形パスを削除(見やすくなる)
パスデータを元にbmpを作成するのですが、デフォルト設定(96dpi)ではぼやけてしまうので解像度を変更
Preferences(shift+ctrl+p,環境設定)のImported
Images(インポートした画像)のResolution for Create Bitmap
Copy(作成するビットマップコピーの解像度)のdpiを十分に大きな値にする
パスを全選択(ctrl+a)した状態でMake a Bitmap
Copy(alt+b,ビットマップのコピーを作成)
イメージ(bmp)選択状態でTrace
Bitmap(shift+alt+b,ビットマップのトレース)でパス化
黒い部分のパスが作成されます
下画面の右側がレイヤー情報です
path1260以外を削除
Plain SVGでエクスポート
blenderにSVGをインポート
SVGデータはカーブデータとして扱われるのでメッシュに変更
x,yを938倍します(何故このサイズになってしまうのか分かりません)
モディファイアのデシメートで平面を纏め(ポリゴン数の削減)
押し出して立体化
選択したオブジェクトをSTLで出力(export SelectionOnly)
STLファイルを使い慣れたスライサーに取り込んでください
PrusaSlicerを使用しています
ポリ数が多いと読み込めない
retract before travelを0ミリにしないとエクストルーダーを持ち上げない場合があるので注意
実際の印刷は3Dプリンターで適当なペンホルダーを作ります
例えばpen plotterやdrawerやholderで見つかるかと
Pen Holder for Ender 3 / Ender 3 pro/CR 10/Ender 5
Ender 3 Pen holder for plotter
3D printer multi-function/ Imprimante 3d Multi-fonction
設定は
他にも色々調整したけど主要なのはこれくらい
LogitechがiFixitと提携という話があったりしますが、たまにはブログを更新しようと思ったので分解と修理ネタです
ロジクールのワイヤレスマウスM325のチルトというのかな、戻ると進むが動かなくなりました
他のPCに接続しても同じ症状なので、ハード側の問題だと判断しました
この機種の修理記事はたくさんあるので、私が適当に書いても影響ないので安心して駄文が書けます
修理はケガや火災等の危険があり、メーカー保証も無くなりますので、個人の修理を推奨しません
新品を買い直したほうが安全ですし、メーカーさんもお店も喜びます
この記事は、修理慣れした方には隠しネジやツメの確認用、そうでない方は無駄知識用です
電池ボックスのシールの下のどこかに小ネジが隠れているので外します
シールを剥がすのが面倒なので破っています
マウス内部のボタン側に差し込むような爪があるので、後方を持ち上げてから斜めに引き抜きます
ホイールのマウンターを外します
次に電池ボックスからプラス端子を抜き、左ボタンのマイクロスイッチ傍の爪(矢印)を開きながらマイナス端子と基板を取り外します
マウンターの下には進むボタン、戻るボタン、その後ろにミドルボタン用のタクトスイッチがあります
写真では判り難いですが、タクトスイッチの金属が沈み高さが変わったためボタンが押せなくなったようです
よく中ボタンも壊すので、3Dモデルの視点を動かす時など押下が強すぎるのかもしれません
タクトスイッチは一般的な6mm角のスルーホールで、1個10円くらいで入手できます
ストックがいっぱいあるので交換します
上はスイッチを取り外した基板を裏から見たものです
複数の足を持つ部品を取り外す技術か道具が必要です
ランド(銅箔部分)を破損すると面倒になります
逆の手順で組みなおせば修理完了です
基板を戻す際に電源スイッチのキャップ(?)を忘れないように
スライドスイッチが外側の時にoffです
ピンボケしてますが、金属部分が沈んだタクトスイッチです
この製品はフォトインタラプタを使用しているので、ホイールのスクロールが飛ぶ、カクつく場合はホイールの格子を掃除すれば改善することがあります
別機種のM235はグリスっぽいもので格子の穴が塞がることがありました
色々なパンを購入して画像認識に使用するのですが、3点シールが見つからない。
店員さん曰く「今年はないみたいだよ~」との事で、アプリが認識するシールは0.5~2.5点の5種類になりました。
去年初めて食べた超芳醇ゴールド(とても美味しい)は3点→2.5点みたいです。
尚、くるみゴールド(1.5点)は好きなので2袋購入。
存在しないみたいですが3点も修正時に選択できるようにしてあります、念のため。
setAutoSizeTextTypeWithDefaults(int autoSizeTextType);
とか
<TextView ︰ android:autosizetexttype="uniform">等で解決するのは、リリース後に知りました(Android 8.0以降)
float calcTextSize(float widthPixels, String str) { if (widthPixels < 1f || str == null || str.length() == 0) return 0f; float textSize = 16f; //適当 Paint paint = new Paint(); //paint.setTypeface(Typeface.SERIF); //表示幅を超える文字の大きさを求める while(true) { paint.setTextSize(textSize); if ( paint.measureText(str) > widthPixels ) break; textSize *= 2f; } //目標の幅に近づける for (float adjust = textSize * 0.5f ; adjust > 0.25f ; adjust *= 0.5f) { paint.setTextSize(textSize); textSize += paint.measureText(str) > widthPixels ? -adjust : adjust; } return (float)Math.floor(textSize); }
表示幅と文字列を与えると、テキストサイズとして0f以上を返します。
float f = calcTextSize(1000f, "hogehoge"); textView.setTextSize(TypedValue.COMPLEX_UNIT_PX, f);
ユーザーがフォントサイズを変更した場合でもCOMPLEX_UNIT_PXなら固定表示です。
もっとシンプルになら、こうでしょうか?
float calcTextSize(float widthPixels, String str) { float textSize = 128f; Paint paint = new Paint(); for (float adjust = textSize * 0.5f ; adjust > 0.25f ; adjust *= 0.5f) { paint.setTextSize(textSize); textSize += paint.measureText(str) > widthPixels ? -adjust : adjust; } return (float)Math.floor(textSize); }
パンまつりが始まったので点数計算 アプリ の更新を行いました。 去年はシールの種類が0.5から2.5点の5種類でしたが、今年は3点シールが復活して6種類です。 (3点シールはダブルソフト専用?) 画像認識に使用するサンプルを購入、プログラムを修正、公開できました。 気が向い...