QRコードを3Dプリンターで印刷する際の知見

AMSのような多色整形の機構をもっていないのなら、土台から1mmくらい伸ばして色を塗るとよい マッキーなんかでもOK

SVGからつくる

mcbeeringiさんのQRコード生成サイトがパスが閉じたQRコードのSVGを吐き出してくれるので、そのままBambustudioにいれられてよい

https://mcbeeringi.dev/petit/test

AMSがあれば便利

image.png

このように凸形状のモデルにすると彩色がとても楽(モデルを分離する必要がなく、上の層のみを彩色すればよい。)また、AMSのない3Dプリンターでも土台の層を印刷した段階で造形を止めてフィラメントを入れ替えられる。

QRコードのモデルを作成する

大量に違う種類のQRコードのモデルをつくるのはとても面倒くさい

→OpenSCADをつかう コードを記述してモデルをつくるので、条件を変更した大量のモデルを簡単につくれる

https://openscad.org/

QRコードのデータをつくる

QRコードはPythonの側で生成する(OpenSCADでQRコードを生成するライブラリもあった。

未検証(このライブラリ、自前でQRコードを計算してる こわい))

👉使った すごいべんり

https://github.com/xypwn/scadqr

import qrcode
import numpy as np

datlist=[]
for i in range(64):
  url = f"<https://example.com/{i}>"
  qr=qrcode.QRCode(border=0)
  qr.add_data(url)
  qr.make(fit=True)
  dat=[[int(v) for v in r] for r in qr.get_matrix()]
  datlist.append(dat)

print("dat = [")
for i in datlist:
  print("  [")
  for j in i:
    print("    [",end="")
    for k in j:
      print(k,end=",")
    print("],")
  print("  ],")
print("];")