鍍金池/ 問答/HTML5  C++  HTML/ canvas插入圖片后的transform操作與手畫軌跡操作關(guān)聯(lián)問題

canvas插入圖片后的transform操作與手畫軌跡操作關(guān)聯(lián)問題

  • canvas插入圖片以后, 需要進(jìn)行旋轉(zhuǎn)放大等操作, 在操作后的基礎(chǔ)上會進(jìn)行手畫記錄軌跡, 問題是旋轉(zhuǎn)放大操作會改變原有坐標(biāo), 手畫也需要記錄坐標(biāo)繪出軌跡, 這兩個坐標(biāo)不重疊,導(dǎo)致放大或者旋轉(zhuǎn)后手畫不到觸點(diǎn)位置, 不知道怎么解決
  • 是不是因?yàn)槭之嫊r用的touchmove事件獲取到的始終是屏幕坐標(biāo)的原因, 有沒有獲取到canvas的左上角為原點(diǎn)坐標(biāo)的方法
  • 難道必須要使用縮放旋轉(zhuǎn)后得到相應(yīng)的轉(zhuǎn)換關(guān)系, 手畫touch事件的時候再加上轉(zhuǎn)換后的值這樣的方法? 但是這樣的話 旋轉(zhuǎn)是以中心點(diǎn)旋轉(zhuǎn)坐標(biāo)系 touch獲取坐標(biāo)是以左上角為原點(diǎn)的坐標(biāo)系
    再加上縮放轉(zhuǎn)換起來豈不是很麻煩
回答
編輯回答
蝶戀花

把你對應(yīng)的canvas坐標(biāo)系放大
你做的transform操作對應(yīng)的都轉(zhuǎn)換到坐標(biāo)系的轉(zhuǎn)化上

2017年3月10日 03:53
編輯回答
喵小咪

記錄放大狀態(tài)和倍數(shù),在計(jì)算手畫位置時,用這個倍數(shù)進(jìn)行相應(yīng)計(jì)算。

2018年1月9日 11:20