Solidworks 学习、Flutter 项目优化、挑选 3D 打印机

Flutter 项目优化

公司 App 中要修改以 Flutter 为基础的首页代码,在旧代码中,主要的消息消息传递是使用 Bloc 来实现的,但是我感觉 Bloc 在使用中虽然结构清晰,并且受制于 Dart 中 Enum 功能太弱,导致操作的创建和使用都要创建子类,用起来繁琐复杂,用起来不够灵活。

这里随改为使用 Notifier 来进行信息传递,Notifier 中借由 Selector 和 Customer 来实现精细化的局部页面刷新,也可以在下级 Widget 中获取到 Notifer 中的数据直接进行加载。页面中的 UI 操作直接触发 Notifier 中的相关方法,然后更新数据并刷新 UI,这样 UI 的刷新和 Data 就绑定在一起,局部的 Widget 无须自己记录数据值,所有的操作都将给 Notifier 来做,待数据更改以后 UI 即更新,保证数据和 UI 的一致性。

这里还有一些布局方面的想法:

  1. 在下级 Widget 中,当无须依赖上层 Widget 时可以使用 UnconstrainedBox 进行嵌套消除不必要的影响,在此次的项目当中使用了一个 ListView 的组件,组件内部可能限制了视图的高度,导致在调试时发现内部的布局有问题,迟迟未能发现原因,后想起来可能是组件内部进行了布局限制。

  2. Flutter 当中可以使用 ShaderMask 底部使用 Image、颜色、渐变色渲染上层的 Widget,这样我们就可以做出变色的、图片底的特殊图形或是文字。ShaderMask class

Solidworks 学习

上周的装的 Solidworks 这周终于有空学习了一些,在 iMac 上装的虚拟机然后运行 Window 来使用,性能上还是有所损耗,我感觉用起来蛮卡的,这周主要学习了草图的制作,平面的 CAD 制图到还算简单,不过最后实在是卡的难受,就没继续。

搜寻了一波,并没有发现在 Mac 上有什么特别好用的工业3D CAD 软件,这里也尝试使用了 Autodesk Fusion 360, 虽然是 iMac 版本的但是感觉优化不不怎么样,分辨率也不是很高,用起来还有闪退的情况出现,最后还是回归了 SketchUp 来进行 3D 建模制作,在 SketchUp 的官方介绍中,我发现了他们也强调了自己的 3D Printing 建模的能力,看来也是想在 3D 打印机建模方面做一些事情

另外,iPad 的 3D 建模软件 Shapr 说是要在 Mac 上发布了,期待…

挑选 3D 打印机

上周就说要在 3D 打印机了,这周挑选了好长时间,首先我选定的结构是 MB、UM 和 Corexy 结构的。
这几个结构稳定性好,精度也会更高一些,然后就是买整机还是 DIY。整机一般较贵而且无法了解其中的结构,如果出现了问题可能在修理上比较麻烦,而 DIY 就能大体的了解结构还能剩下一笔钱。然后就是漫长的挑选过程了

大厂的打印机包括了创想三维、激光沃尔和闪铸等,这里主要还是看了这三家。DIY 的厂家看了淘宝上 小树科技、必拓科技、DW 多维空间等机子,下面做一个畸形对比总结

| 品牌型号 | 价格 | 结构 | 打印尺寸 | 外尺寸