写作绅士,读作丧尸 X岛揭示板
顺猴者昌 逆猴者亡 首页版规 |用户系统 |移动客户端下载 | 丧尸路标 | | 常用图串及路标 | 请关注 官方公众号:【X岛揭示板】 官方微博: 【@X岛极速版】| 人,是会思考的芦苇
常用串:·豆知识·跑团板聊天室·公告汇总串·X岛路标

[只看PO]No.55960826 - 无标题 - 技术宅


•程序语言、压制投稿、视频制作以及各计算机领域的技术问题
•我觉得还是CSDN靠谱一点
•本版发文间隔为15秒。

无标题 无名氏 2023-03-03(五)22:27:36 ID:TPWHppd [举报] [订阅] [返回主串] No.55960826 [回应] 管理
发了好多串问肥哥们,感觉污染版面了,为了防止自己进一步污染版面,再来开一个问题记录串ᕕ( ゚∀。)ᕗ

内含大学生初试软件开发,目前还处于html与js阶段,如果有对这方面有一定了解的肥哥还请不吝赐教⊂( ゚ω゚)つ
无标题 无名氏 2023-03-03(五)22:33:19 ID:TPWHppd (PO主) [举报] No.55960934 管理
目前一个很大的问题是如何实现将div元素放进canvas画布里面,并跟随canvas的移动或者缩放改变,并且与此同时还要求这个div元素本身拥有的事件不变,即可以在canvas画布上继续操作div元素

天哪,光想想就头疼,canvas画布的文档上这种内容是一个字都没有啊( ゚∀。)

有肥哥给我推荐了phaser插件,但是它那个example只给了js代码,我都不知道要怎么复刻或者调试( ゚∀。)

不过我看了一下,这个插件或许能满足我的要求,打算明天多花点时间搞搞(ゝ∀・)

今天的进度主要就是一个小插件的成功使用与功能实现,晚上一直在看phaser文档,看得我头疼( ゚∀。)

说起来,国内有什么解答编程问题的论坛吗,百度时经常能看到某某网站搬的国外论坛对话
收起 查看大图 向左旋转 向右旋转
无标题 无名氏 2023-03-03(五)23:08:36 ID:TPWHppd (PO主) [举报] No.55961638 管理
>>No.55961203
好耶,谢谢高技术力肥哥!

那肥哥,我有这样一些需求,但是我看了好几个example都有点不满足我的需求,如果您能够为我解答,那真是感激不尽!

1.我希望我能用鼠标拖动,放大以及缩小canvas画布,我知道这个过程可以通过操作camera实现,但是我不知道要怎么把鼠标的事件(抓取然后移动,滚动滚轮)转换成camera可以读取的controls

2.我想将动态生成的div元素插入进画布,使其能够被上述操作同时进行修改,即其可以随着画布的拖动(或者说camera的移动)而移动,随着画布的缩放(camera视角的改变?)而同步改变大小,最关键的是我希望这个div元素的事件仍然有效

我看了一些插入dom元素的例子,但它们最后似乎都不会在html里存在了,我不知道这要如何解决,因为我已经完成了的功能都是基于html的id功能实现的

给肥哥jp
无标题 无名氏 2023-03-09(四)20:49:08 ID:TPWHppd (PO主) [举报] No.56087154 管理
>>No.56080530
可我就是想要dom可以和画布一起放大缩小移动(つд⊂)

之前是考虑网页内嵌,把dom放进去作为内网页的元素,但是内网页响应不知道为什么很慢,内网页的镜头移动也不知道该怎么做,于是就来求助肥哥们了( ´∀`)

不过我这几天狂啃phaser,也有一点觉得不大适合,一方面是画布对dom元素的支持有点差,即使有api支持写起来也很累(つд⊂)
无标题 无名氏 2023-03-09(四)20:59:36 ID:TPWHppd (PO主) [举报] No.56087377 管理
>>No.56087154
玩手机被老师训了( ´∀`)

另一方面是这个phaser的文档是真不好啃啊,示例代码也不好用,资源分开装真的不大能理解,不过示例确实很多呢( ゚ 3゚)
无标题 无名氏 2023-03-15(三)16:29:07 ID:TPWHppd (PO主) [举报] No.56213576 管理
Phaser看了三天三夜做出来还是一坨答辩,放弃了(;´ヮ`)7

问了问老师,老师说最好就使用dom元素作画布,这样的之前的功能都能继续使用

但问题是这个dom元素画布是不是有点难搞( ↺ω↺)

目前实现了
移动(子元素可以独立移动,画布拖动带着子元素一起动)
放大缩小(通过zoom实现的,好省事哦)
子元素添加

但问题出在画布大小上,我想要实现那种画布可以无限延伸,用户可以一直拖一直拖一直拖那种感觉

一开始想的是长宽修改,但是width和height扩大只能使得画布向右or下扩大( ゚π。)

然后就发现一件很糟糕的事情,div的元素定位似乎都是从左上角的那个点出发的,一旦修改了这个点的位置,那么div内的元素也会跟着移动,最终就出现了明明向左/上拓展了画布,但是内部的元素完全没有移动的尴尬局面( ゚∀。)7

现在觉得html真是太不好用啦,我现在转unity还来得及吗( ›´ω`‹ )
无标题 无名氏 2023-03-15(三)16:33:24 ID:TPWHppd (PO主) [举报] No.56213662 管理
>>No.56213576
咨询了经常使用设计类软件的朋友,说是可以整一个设置画布大小的功能(*゚ー゚)但是肥肥还是想试试这么做(つд⊂)感觉很厉害

其实目前最主要的问题就是如何让dom元素向左/上方扩大,同时还不会影响到子元素的位置(*゚ー゚)
无标题 无名氏 2023-03-15(三)17:31:50 ID:TPWHppd (PO主) [举报] No.56214640 管理
想了想,目前拟订的解决办法有:

1.提供一张自定义大小的画布,画布的大小可以缩放

问题:jqui提供的缩放部件还是会导致内部的元素一起移动!
解决:缩放结束后修改其内元素的位置使其位置不变
问题2:当其内元素过多时,十分影响性能

2.提供一张很大的画布,支持拖动移动,拖动后按照拖动距离增大画布的长/宽

问题:增大长/宽只能拓展右/下,如果用户一直往左上移动还是没用
解决:让元素的位置始终相对于body文档而不是画布
问题:怎么做到?目前看来只要是父元素内的子元素,那么其位置就一定受父元素的左上点影响

3.换个开发环境|-` )
无标题 无名氏 2023-03-15(三)17:33:24 ID:TPWHppd (PO主) [举报] No.56214672 管理
>>No.56214640
有点想法了,整理思路还是有效的

一个最外层div做画布,一个中间div做容器,容器内就是各种小dom元素

最外层大小修改以后,将中间层的位置修正,看看有没有效果( ´∀`)
无标题 无名氏 2023-03-18(六)12:47:16 ID:TPWHppd (PO主) [举报] No.56272377 管理
( ;´д`)玩了两天游戏我好堕落

最终决定用定大小画布来解决了,一方面是做嵌套,无限画布的话切换性能占用过高,另一方面就是定大小画布实现起来更简单

只不过配套的就得做画布尺寸修改和画布定义了,这个纯纯地堆工作量感觉还好(ノ)`ω´(ヾ)

另外老师推荐我说最好把所有功能都列出来,感觉有点麻烦,但是一想到如果采用堆屎法后期维护会加倍麻烦(;´ヮ`)7抽点时间做个小文档吧ᕕ( ゚∀。)ᕗ
无标题 无名氏 2023-03-24(五)09:02:54 ID:TPWHppd (PO主) [举报] No.56391063 管理
>>No.56367217
居然已经有人做了类似的软件了吗(;´Д`)
看了看功能也太多了,我狠狠抄(つд⊂)谢谢博学的肥哥( ´∀`)

不过这个代码可读性也太差了,动不动就是函数变量,跳来跳去半小时没看懂一个drag( ゚∀。)但是也很有启发,我抄,我抄

UP主: