画像にパスを加えるツール 3 version 3

2019/08/02 14:09 by yamasyuh68
  :追加された部分   :削除された部分
(差分が大きい場合、文字単位では表示しません)
画像にパスを加えるツール 3
190731
# マウスで自由変形
- rectのCPは変形の都度作るように変更、良い感じになった
- transform をパスに直接適用するか、itemに適用するかで挙動が違うことはわかった、ある程度思った通りに動くようになってきた
- 構想としては、単純なrectを自由に変形できるようにしておいて、パーツとして使うパスはこのrectの子供としてsceneに追加することで、このパーツを自由に変形すること
- 実験ではうまくいってるので方向性は良いと思う
- ただし、rectについて、itemに対する変形は子供に伝わるが、rect内のパスを直接変形してしまうと子供に伝わらない
まあ当然だな、やられた
- しかし、itemベースのtransformはうまくいかないのだ
回転した状態で横だけ伸ばすと、シアーになる
変形の順番の問題だな、多分
回転は最後にしなくちゃいけない・・・どうやって???
- あと、パスとrectの関係がちょっと難しい。全て0を起点にしてあれば良いんだが・・・
パスパーツは少なくとも保存するときはゼロ起点にしておく必要があるな
# scene保存
View.mapToScene( QPoint(0,0) )
これでsceneの起点のview座標が得られるので、viewの方が大きい場合は単純にこれで補正すれば良い
うまく書き出せるようにはなった

---
190801 
- CPのパスを作るのはやめる、包含判定はRectで、描画もdrawRectにした
- これでrectアイテムは良かったが、矢印のパスにするとそもそもCPをマウスが認識しなかった
マウスのシェイプ無いしかマウスは反応しないので、cpドラッグできない
マウスのシェイプしかマウスは反応しないので、boundindRect 上のcpドラッグできない
- transform はイロイロ実験したが、rotateとtransformを組み合わせるとうまくいかないことがわかった
xだけ小さく、縦に細長くしてrotateすると、普通には回転せず、シアーのように回転する
xだけ小さく、縦に細長くしてからrotateすると、普通には回転せず、シアーのように回転する
- そもそものtransform の理解の問題だと思う、もっと勉強が必要か??
- item を回転させて、縦横は item の path を直接transformすれば思った通りの変形にはなる
実用化を目指すならこの方法が簡単
マウスは難しいから一部キーとの併用にはなると思うけど
- **エクセルの図形は簡単に変形できて素晴らしい**
当たり前のように使ってたけどなあ、むつかしいものだ


---
---> [PyQt で画像にパスを加えるツールを作る #](https://mimemo.io/m/JkWVal6ZmJlBEqd)
      

190731

マウスで自由変形

  • rectのCPは変形の都度作るように変更、良い感じになった
  • transform をパスに直接適用するか、itemに適用するかで挙動が違うことはわかった、ある程度思った通りに動くようになってきた
  • 構想としては、単純なrectを自由に変形できるようにしておいて、パーツとして使うパスはこのrectの子供としてsceneに追加することで、このパーツを自由に変形すること
  • 実験ではうまくいってるので方向性は良いと思う
  • ただし、rectについて、itemに対する変形は子供に伝わるが、rect内のパスを直接変形してしまうと子供に伝わらない
    まあ当然だな、やられた
  • しかし、itemベースのtransformはうまくいかないのだ
    回転した状態で横だけ伸ばすと、シアーになる
    変形の順番の問題だな、多分
    回転は最後にしなくちゃいけない・・・どうやって???
  • あと、パスとrectの関係がちょっと難しい。全て0を起点にしてあれば良いんだが・・・
    パスパーツは少なくとも保存するときはゼロ起点にしておく必要があるな

scene保存

View.mapToScene( QPoint(0,0) )
これでsceneの起点のview座標が得られるので、viewの方が大きい場合は単純にこれで補正すれば良い
うまく書き出せるようにはなった


190801

  • CPのパスを作るのはやめる、包含判定はRectで、描画もdrawRectにした
  • これでrectアイテムは良かったが、矢印のパスにするとそもそもCPをマウスが認識しなかった
    マウスのシェイプ内しかマウスは反応しないので、boundindRect 上のcpはドラッグできない
  • transform はイロイロ実験したが、rotateとtransformを組み合わせるとうまくいかないことがわかった
    xだけ小さく、縦に細長くしてからrotateすると、普通には回転せず、シアーのように回転する
  • そもそものtransform の理解の問題だと思う、もっと勉強が必要か??
  • item を回転させて、縦横は item の path を直接transformすれば思った通りの変形にはなる
    実用化を目指すならこの方法が簡単
    マウスは難しいから一部キーとの併用にはなると思うけど
  • エクセルの図形は簡単に変形できて素晴らしい
    当たり前のように使ってたけどなあ、むつかしいものだ

---> PyQt で画像にパスを加えるツールを作る #