1291500406
发表于 2022-3-3 22:02:57
本帖最后由 1291500406 于 2022-3-3 22:04 编辑
wharan 发表于 2022-3-3 21:42
这段代码,有什么问题呢?(defun c:test ()
(entmake '((0 . "LAYER")
(100 . "AcDbSymbolTableR ...
文本编码为UTF-8 是乱码解读的
你先另存为 ANSI 文本编码
Bao_lai
发表于 2022-3-3 22:24:46
1291500406 发表于 2022-3-3 22:02
文本编码为UTF-8 是乱码解读的
你先另存为 ANSI 文本编码
重点是这个透明度怎么跟这个对应,比喻0~100.
1291500406
发表于 2022-3-3 22:28:00
本帖最后由 1291500406 于 2022-3-4 18:54 编辑
Bao_lai 发表于 2022-3-3 22:24
重点是这个透明度怎么跟这个对应,比喻0~100.
你穷举吧 也就90个 这是24色算法范畴
获取透明的33554623 转 25
设置透明度 25 转 33554623
http://5b0988e595225.cdn.sohucs.com/images/20190917/4b3ebe0d13384ae0a5cd857404d61147.jpeg
提示:
(setq a(lsh 33554623 24))
-1090519040
(abs(- (lsh (+ a 2147483647)25)(lsh a -24)))
33554623
Bao_lai
发表于 2022-3-3 23:09:12
1291500406 发表于 2022-3-3 22:28
你穷举吧 也就90个 这是24色算法范畴 移位 还原 255之类的算法
获取透明的33554623 转 25
设置透明 ...
学到了,感谢强哥。
wharan
发表于 2022-3-3 23:16:29
1291500406 发表于 2022-3-3 22:02
文本编码为UTF-8 是乱码解读的
你先另存为 ANSI 文本编码
这个是ANSI编码的
(defun c:test ()
(entmake '((0 . "LAYER")
(100 . "AcDbSymbolTableRecord")
(100 . "AcDbLayerTableRecord")
(70 . 0)
(6 . "Continuous")
(2 . "name")
(-3 ("AcCmTransparency" (1071 . 33554623)))
)
)
)
1291500406
发表于 2022-3-3 23:20:48
wharan 发表于 2022-3-3 23:16
这个是ANSI编码的
你确定?打开还是utf-8
wharan
发表于 2022-3-4 00:19:13
1291500406 发表于 2022-3-3 23:20
你确定?打开还是utf-8
被这个问题难住了。Auto Lisp编辑器生成的,你说的解读乱码,是计算机解读乱码还是在你那里解读乱码?
babylon1386
发表于 2022-3-4 01:12:21
石总厉害:hug:
guosheyang
发表于 2022-3-4 11:14:45
wharan 发表于 2022-3-3 21:14
搞不清组码-3的意义。这段代码执行后返回nil,不能生成图层。AutoCAD2022,Win11
经测试 代码加上一句代码就可以了
(progn
(regapp "AcCmTransparency")
(entmake '((0 . "LAYER")
(100 . "AcDbSymbolTableRecord")
(100 . "AcDbLayerTableRecord")
(70 . 0)
(6 . "Continuous")
(2 . "name")
(-3 ("AcCmTransparency" (1071 . 33554623)))
)
)
)
wharan
发表于 2022-3-4 11:54:36
guosheyang 发表于 2022-3-4 11:14
经测试 代码加上一句代码就可以了
(progn
(regapp "AcCmTransparency")
经测试,成功。谢谢诸位热心的朋友