【定制图纸】自定义定制宏-pg电子游戏下载

本文阅读时长:20分钟更新于2024-08-16

一、功能介绍

常见问题:

  • 在最原始的手工制图场景下,如上图标红的区域中,需要填写一些该定制柜订单的信息,包含订单信息、产品信息等,这部分内容都是由出图人员手工填写的,是一个繁琐、易出错的事情

功能优势:

  • 在具备模型、方案、订单完整信息后,酷家乐可以通过获取相应的方案信息、模型属性之后自动填写右侧订单信息栏

自定义宏的概念:

  • 通过获取相应的方案信息、模型属性之后自动填写右侧订单信息栏,这种基于对象属性的自动填充字段叫做宏

二、面向用户

商家用户且有“施工图管理”权限,有需要可以联系商家运营咨询

三、操作步骤

第一步:进入【施工图管理】,选择【图框库】,点击右上方【上传素材】可自行上传图框

第二步:对上传图框素材进行命名、设置打印规格、上传支持的图框文件,点击确定即上传成功

第三步:图框上传成功后,点击编辑,进入图框编辑界面

第四步:进入图框编辑界面后,在左侧图框配置中,提供了很多现成的宏可供使用

  • 当现成的宏不满足时,可在【施工图设置-定制图纸设置】自行创建自定义宏;创建后,同样可在【素材库-图框库】的图框配置中使用

第五步:可以在一个图框中从可支持的宏的列表中拖入宏,形成一个宏文本标签,可放置到图框中合适的位置

四、计算逻辑

1、脚本支持的模型参数/变量

参数/变量 参数/变量名 类型 说明
模型的参数


建模时模型上的参数

自定义变量 & 系统变量

ps:注意不支持报告变量、中间变量

写法为#变量引用名,例如#w1


真分类id

#prodcatid

string


建模时模型上的可选值参数

#x_displayname (x为参数引用名)

string

可选值参数,可以取其可选值的展示名


#ancestorcatids


该模型所有父级模型真分类的集合(不包含自身)


#topmodel

boolean

判断该模型是否为顶层模型

建模时模型参数指向的商品(材质商品、轮廓商品、样式商品)

#x_bgname

string

该参数指向的商品的商品名

#x_bgproductcode 该参数指向的商品的产品编码
#x_bgmodel 该参数指向的商品的型号
模型商品的属性


模型-商品id

#brandgoodid

double

如果看不到解密的商品id,可以这样写:

#brandgoodid==#decrypt("3fo4gr47a455")

模型-商品名称

#modelbgname

string






模型-型号

#modelbgmodel

string

模型-产品编码

#modelbgproductcode

string

模型-商品的自定义编码

#bgcustomcode

string

模型-商品的自定义字段

#bgcustomfield_xxx (xxx代表自定义信息的系统id)

string

商品自定义属性

所有商品自定义属性在宏中使用时,均应写为:#param_biz_x

x表示了自定义属性的“属性编码”

例如上图,应写为:#param_biz_hhh


模型输出的参数


产品编号

#installationcode

string

指的是模型的产品编号
材质商品的属性


材质-商品名称

#materialbgname

string

指的是模型系统变量#cz对应的商品参数

材质-型号

#materialbgmodel

string

材质-产品编码

#materialbgproductcode

string

工具中产生的参数


模型-展示名称

#modelname

string

商品备注

#remark

string


类型

关键字

举例

字符串 ""

#x1 == “abc”

关系运算符

==, !=,< ,  > ,

>=,  <=

#h > 1000
逻辑运算符

and表示且  ,or 表示或,! 表示非 

 #w == 18.5  or  #w == 21.5

三目运算符 ?: #ld > 1000 ?  "吊柜" :“地柜”

2、筛选条件

  • 自定义宏的意义在于输出模型的信息,那么计算一个宏,要用哪些模型进行计算?这一点需要用到筛选条件控制
  • 当范围内(范围的含义见下文)的模型符合筛选条件时(模型参数用筛选条件脚本判断结果为true),才会输出该模型的信息

注意:此时模型的各个层级都会参与脚本计算,例如一个顶层模型为【通用地柜】,但同时其下又包含一个【通用地柜】子模型,那么他们都会参与脚本计算,都有可能被筛选!

1)以图纸为范围筛选

此时宏的筛选维度是“图纸”,一张图纸上有多个视图,每个视图对应多个模型;进而可得出图纸所包含的模型范围;通过筛选条件,在一张图纸包含的模型中,筛选出所需计算的部分

2)以方案为范围筛选

此时宏的筛选维度是“整个方案”;通过筛选条件,在这个方案的所有模型中,筛选出所需计算的部分;需勾选【全方案获取】

3)支持的计算函数

除了脚本支持的模型参数/变量之外【筛选条件】还支持以下函数

函数名

含义

示例

输出类型

#contains(#具体模型字段, "包含内容")

模型的什么字段 包含 “” #contains(#modelbgname, “板") boolean

#containsancestorcatids({,})


模型的所有父模型中,包含列表中的真分类的模型(特殊实现,一般用不到)

#containsancestorcatids({500, 498})

boolean

#containselement({条件1,条件2}, string)

包含于列表中

#containselement({123, 2345}, #prodcatid)

boolean

#left(#参数,num)

#right(#参数,num)

#mid(#参数,num)

判断参数的第一位、中位、最后一位,等于\不等于\大于\小于数字

boolean
#combinationsubmodel 是否是组合下的顶层模型
boolean
#topmodel 是否是顶层模型
boolean

3、输出字段

筛选出所需模型后,通过输出字段确定希望输出模型的哪些信息,可使用脚本支持的模型参数/变量

4、输出方式

确定了要输出模型的哪些信息后,通过输出方式控制最终结果的样式;

仅支持输出字段所获取的模型参数/变量,以及以下函数:

  • 例如模型同时有#w、#d、#h,输出字段只取了#w,那么输出方式就无法针对#d和#h做任何计算

函数名

含义

示例

#style( 是否统计数量, 输出字段是否输出)

对字符串结果进行样式表达,可选是否计数以及是否输出名称
  • 把手名称* 数量:  #style( true, true)
  • 水盆型号只有尺寸不要计数:#style(false,true)
#styleseparator(是否统计数量, 输出字段是否输出,"\n") 对字符串结果进行样式表达,可选是否计数以及是否输出名称,\n表示了对结果换行;
  • 如需对结果进行换行:#styleseparator(false, true, "\n")

#combine(规则1, 规则2,.......)

多种规则结果,合并输出。 支持多个规则合并
  • 第一和第二多的输出: #combine(#styleordinal(1), #styleordinal(2))

#styleordinal( 整数)

取出现次数第 n 多的内容
  • 柜体主材质: #styleordinal( 1)
  • 柜体次材质: #styleordinal( 2)
#round 数值型参数四舍五入取整 #round(#w)
#deroundtostring(double, int)

四舍五入取第二个参数作为保留小数位数的结果,如果保留的小数为 0 则会被删除(比如 500.0 保留一位小数结果为 500)

注意返回值为 string,结果无法用于数值计算,需要数值计算请用下面的 deround

仅到比如要保留一位小数,对于500.0这种情况需要去除.0才考虑使用。

#deroundtostring(#w, 1)
#deround(double, int) 四舍五入取第二个参数作为保留小数位数的结果,与编辑器函数同名 #deround(#w, 1)
#stylecount(true, true,string, string) #stylecount( 是否统计数量, 输出字段是否输出,连接输出字段和数量的字符, 每一项的单位) #stylecount(true, true, "=", "个")

5、排序依据

当输出了多个模型的多组数据时,如不控制排序,它们会按照模型id的顺序来排,基本就是乱序

如需控制顺序,应在排序依据处,输入希望以模型的哪个参数为参考,控制其先后顺序

函数名 含义 示例
sort("#排序字段",排序方式)  不带分隔符的排序,排序方式(0升序,1降序)

排序字段的参数名为:#px

参数实际内容为:1、2、3

#sort(“#px”,0)

最终结果:1、2、3 

sortseparator("#排序字段",排序方式,'排序分隔符') 

带分隔符的排序,排序方式(0升序,1降序)

‘排序分隔符’:需手动告诉算法,数据中哪个是分隔符

排序字段的参数名为:#px

参数实际内容为:4_1、4_2、4_3、5_1

#sort(“#px”,0,'_')

最终结果:4_1、4_2、4_3、5_1

6、自定义宏支持不去重输出

施工图设置 - 定制图纸设置 - 宏设置,增加输出方式函数:#styleduplicate("连接符")

例如:#styleduplicate("\n") 表示不去重输出并换行

可以随时点赞啦
网站地图