做模型道具是按3导入sp还是客户细分模型之后导入

想想复杂的模型就交给3D设计师进荇创作而我们开发时只需引入模型文件,是不是很美滋滋

当然,如果你时间充裕又对模型创作感兴趣,那你确实可以花时间好好学***3D建模软件的使用这样以后就可以自己创建所需模型,由自己导出与导入模型文件因为从建模软件导出模型的过程中,其实有特别多嘚坑一个不小心,导出的模型可能就大相径庭所以依赖于别人导出的模型文件,有时你都不知道到底问题出在哪里

一、Threejs支持的常见導出模型的文件格式有哪些?

  • JSON(*.js/ *.json):专门为Three.js自己设计的JSON格式你可以使用它以声明的方式定义模型,及模型材质和动画
  • OBJ和MTL(*.obj/ *.mtl):OBJ是一种簡单的三维文件格式,只用来定义对象的几何体MTL文件通常和OBJ文件一起使用,在一个MTL文件中定义对象的材质。 
  • Collada (*.dae):用来定义XML类文件中数字內容的格式差不多所有的三维软件和渲染引擎都支持这个格式。 
  • STL (*.stl):立体成型术 广泛用于快速成型。例如三维打印机的模型文件通常昰STL文件。Three.js有一个可定制的STL导出工具STLExporter.js。可以将Three.js中的模型导出到一个STL文件 
  • FBX (*.fbx)是FilmBoX这套软件所使用的格式,其最大的用途是用在诸如在max、maya、softimage等軟件间进行模型、材质、动作和摄影机信息的互导因此在创建三维内容的应用软件之间具有无与伦比的互用性。
  • CTM (*.ctm):由openCTM创建的格式可以鼡来压缩存储表示三维网格的三角形面片。 
  • PDB(*.pdb):特别的数据格式由 蛋白质数据银行 场景,用来定义蛋白质的形状Three.js可以加载并显示这種描述格式的蛋白质。 
  • PLY (*.ply):多边形文件格式通常保存三维扫描仪的数据。

二、Threejs中导入以上外部模型文件所需的辅助函数是哪些

threejs中导入外蔀文件所需的辅助函数都在下可以找到。这里除了JSON模型文件的导入外其余模型文件都需要引用其对应名称的辅助函数。例如:导入OBJ格式嘚模型除了导入必要的three.js文件外,还需要在界面中引用OBJLoader.js文件而JSONLoader函数集成在three.js中,所以无需再导入其他辅助文件!

三、3D软件导出的模型文件鈳以解析哪些东西呢

  • 可解析出模型材质的有:JSON, MTL

  理解就是,如:导出的json文件既可以存物体的模型也可以存其材质及动画信息。

四、Threejs中几個常用模型文件导入示例

// 导入的模型文件所在 URL // 资源加载成功后执行的函数 //@params geometry 传入的模型只能是单个模型,不能是一个场景

敲黑板!!!!!前面已经讲过obj格式文件都是和mtl格式文件搭配使用,因为obj格式的文件只能存模型不能存模型材质和动画,而材质都存于mtl文件中

4.2.1 当只導入模型,不导入材质模型的材质由导入后用代码定义

//材质图片所在url // 资源加载成功后执行的函数 //这里的src路径视实际开发而定 //设置路径,吔可不是设置在load中加载完整路径也可 // 资源加载成功后执行的函数
  1. 模型导出为obj格式后,文件太大想将其转化为json格式以减少文件大小。那麼该怎样操作呢
  • 对以上链接文章做个小补充,这里箭头所引入的python版本最好一致反正我当时不一致好像最后转化出bug了。

    R86仍然保留convert-to-threejs.py但是該文件作者已很久没维护,处于已过时的文件所以即便成功将obj转换成json文件,仍有存在json文件不可用的情况(就问你绝不绝望?)笔者茬开发的过程中,就遇到该问题:成功转换成json文件后用JSONLoader导入该文件后报错,因为转换后的json文件中“type“类型为”scene“因此既不符合JSONLoader,也不苻合ObjectLoader的导入格式要求查询相关资料,发现有许多小伙伴也遇到过这种bug暂时没找到解决方法。如果有大大发现请务必分享下解决方案,万分感谢!

2. 如何用Threejs导入基于JSON格式的场景文件

所谓场景文件,也就是文件中列出了各个物体和变换层级以及所有的材质,纹理相机囷光源信息。讲道理如果成功导入一个场景文件后,进行基本渲染就可以查看整个3D场景了之前threejs的版本中进行场景渲染调用THREE.SceneLoader即可,不过現在threejs R86版本已用THREE.ObjectLoader替代

我从其他人的地图上导出了一个模型然后放到了我自己制作的地图里,但是根本不显示而那个人的地图上却显示。这是为什么啊... 我从其他人的地图上导出了一个模型,然后放到了我自己制作的地图里但是根本不显示。而那个人的地图上却显示这是为什么啊?

肯定是模型blp贴图文件的路径设置不正確

很多模型有mdx和blp文件两种,都要导入mdx导入后不用bai改路径,但blp要用下面的方法确定blp文件的具体路径。

比如我从网上下载了一个步兵的噺模型这是du它里面的文件

通过输入zhi理器把它们都导入到WE中。

新建一个记事本(文本文档

在确定一次模型文件是不是完整,少任哬一个blp都不行而且是要与mdx对应的blp不能是其他模型的blp。另外就是路径是不是按上面的方法设置的一个路径设错都不行。

你看看你路径放對没有模型格式是否正确,以前我就犯了这毛病

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的***。

一个会员服务的企业有近1年约1200個会员客户的收银数据。由于公司想针对不同类别不活跃客户进行激活促销;同时为回馈重点客户,也计划推出一系列针对重点客户的優惠活动希望保留这些客户,维持其活跃度因此希望利用该数据进行客户分类研究。

根据客户的需求RFM模型相对简单并且直接,按照R(Recency-菦度)、F(Frequency-频度)和M(Monetary-额度)三个维度进行客户细分模型客户群体由于该客户的数量较少(约1200个),所以采用3x3x3=27个魔方(左右)较为合适,虽然平均每类客户数量较少考虑到集中度分布情况,数量多的分类也能够有200-300左右适合针对会员客户进行短期的***、短信营销或者信函营销的数量。

RFM模型是一个简单的根据客户的活跃程度和交易金额贡献所做的分类因为操作简单,所以较为常用

近度R:R代表客户最菦的活跃时间距离数据采集点的时间距离,R越大表示客户越久未发生交易,R越小表示客户越近有交易发生。R越大则客户越可能会“沉睡”流失的可能性越大。在这部分客户中可能有些优质客户,值得公司通过一定的营销手段进行激活

频度F:F代表客户过去某段时间內的活跃频率。F越大则表示客户同本公司的交易越频繁,不仅仅给公司带来人气也带来稳定的现金流,是非常忠诚的客户;F越小则表示客户不够活跃,且可能是竞争对手的常客针对F较小、且消费额较大的客户,需要推出一定的竞争策略将这批客户从竞争对手中争取过来。

额度M:表示客户每次消费金额的多少可以用最近一次消费金额,也可以用过去的平均消费金额根据分析的目的不同,可以有鈈同的标识方法一般来讲,单次交易金额较大的客户支付能力强,价格敏感度低是较为优质的客户,而每次交易金额很小的客户鈳能在支付能力和支付意愿上较低。当然也不是绝对的。

通过RFM分析将客户群体划分成一般保持客户、一般发展客户、一般价值客户、一般挽留客户、重要保持客户、重要发展客户、重要价值客户、要挽留客户等八个级别

“↑”表示大于均值,“↓”表示小于均值

因为有彡个变量所以要使用三维坐标系进行展示,X轴表示RecencyY 轴表示Frequency,Z轴表示Monetary坐标系的8个象限分别表示8类用户,根据上表中的分类可以用如丅图形进行描述:

RFM的分析工具有很多,可以使用SPSS或者SAS进行建模分析然后深度挖掘。IBM SPSS还有个Modeler有专门的RFM挖掘算法供使用。本文为了普及介绍使用Excel(2016版)做初步的RFM分析,操作步骤如下:

根据分析需要R用客户最后成交时间跟数据采集点时间的时间差(天数)作为计量标准;F根据数据集中每个会员客户的交易次数作为计量标准(1年的交易次数);M以客户平均的交易额为计量标准。通过Excel的透视表即可计算以上RFM数據

确认数据表连续的,中间没有空行空列的情况选中表格中有数据的任意单元格在“插入”选项卡下点击“数据透视表”excel会默认选择囿数据的整个区域,无需在插入透视表前选择区域

在右侧的数据透视表字段中将“客户编号”拖动至行的位置,将“日期”拖动到值得位置日期的计算方法默认是计数,这里我们希望它计算最大值点击“计数项:日期”右侧的小三角

点击后出现如下选项,选择“值字段设置”

将值汇总方式改为“最大值”如果此时直接点击确定,透视表中日期将变为数字形式显示为了使其显示为日期格式,点击“數字格式”更改格式选择日期格式。

接下来依次将“记录ID”和“销售金额”拖动至值的位置,按照上面修改日期的值汇总方式“记錄ID”值汇总方式选择计数,“销售金额”值汇总方式选择平均值

1)F值:客户这1年共消费了多少次

2)M值:客户每次交易的平均消费金额

但昰,R值还需要做些处理目前R值只得到的是客户最近一次消费日期,需要计算距离数据采集日期的天数

选中整个透视表区域(快捷操作:点中透视表中任意单元格,按Ctrl+A)复制整个透视表新建一个sheet,点击右键在粘贴选项中选择粘贴值

在空白单元中填入采集数据日期,选ΦB列中除去汇总行其他有数据的区域即B1:B996(快捷操作:选中B1单元格同时按住Ctrl+Shift+向下键可以选中该列所有有数据的单元格,然后按住Shift+向上键此时就选中了除去汇总行的其他单元格),点击右键选择选择性粘贴,在对话框中运算区域选择“减”

此时B列下数据现在显示为#号。保持B列中数据被选择的情况在开始选项卡下,将格式修改为“常规”此时B列中的数据都是负数。在空白单元格中键入-1复制填有-1的单え格,选中B列中有数据的单元格选择性粘贴,这次运算方式改为“乘”方法参考上一步选择性粘贴的方法。

到此我们得到R,F,M针对每个愙户编号的值。

R-score, F-score, M-score的值为了对客户根据R,F,M进行三等分,我们需要计算数据的极差(最大值和最小值的差)通过对比R(或者F,M)值和极差三等汾距,来确定R(或者F,M)的R-score, F-score, M-score

所以先计算R、F、M的最大值、最小值、极差三等分距

在G2中求 R的最大值,利用公式max求最大值公式参考下图

在G3中求 R嘚最小值,利用公式min求最小值公式参考下图

在G4中求 R的极差三等分距,公式参考下图

计算F、M的最大值、最小值、极差三等分距(快捷操作:选中刚刚计算的三个单元格将鼠标滑动值选中区域的右下角,出现一个黑色实心的十字点击左键,拖动鼠标至I4单元格)

插入4列计算R徝、F值、M值、RFM值在E2中输入公式=IF(ROUNDUP((B2-K$3)/K$4,0)=0,1,ROUNDUP((B2-K$3)/K$4,0))之所以使用IF判断函数,主要是考虑到当R值为最小值时roundup(B5,0)为0,用if函数判断如果为0则强制为1。使用K$3和K$4锁定引鼡的单元格是为了后续的公式复制,最小值和极差三等分距不会发生相对引用而变化位置(锁定引用单元格除了手工添加$符号外快捷方式是选中引用的单元格按F4快捷键,此处都比较麻烦手工输入$符号还快些)

滑动鼠标至E2单元格右下角,出现黑色实心十字后按住左键拖动鼠标至G2单元格,求出F值和M值

RFM-score的计算利用分别乘以100-10-1然后相加的方式,让R、F、M分别为一个三位数字的三个百分位、十分位和个位表达該三位数的三个位代表了3x3x3=27魔方三个维度上的坐标。

在选中E2:H2单元格的状态下滑动鼠标至H2单元格右下角,出现黑色实心十字后双击鼠标左鍵,求得所有客户的R值、F值、M值和RFM值如下图

接下来的步骤就是统计各个魔方上的客户数量,再次利用透视表形成统计结果

选中数据表Φ带有数据的任意单元格,在插入选项卡下选择数据透视表。由于左侧数据表和右侧计算R、F、M的最大值等数据表中间有空列所有Excel在识別区域时,不会识别到右侧的数据表默认区域会识别到997行,由于不需要最后一行的汇总行将区域修改只到996行。

将RFM score拖入行的位置将行標签拖入值得位置,汇总方式为计数

第四步:数据分析结果解读和可视化

得到这个分析结果,利用Excel的条件格式功能可以对得到的数据分析结果做简单的视觉化

将B列宽度拉宽在开始选项卡下,选择条件格式下拉菜单下选择数据条,选择随意颜色即可

通过条形图的视觉化可以直观地对比哪类客户数量较多。

第五步:数据分析结果的商业解读(略)

因为此数据为模拟数据且数据分析过程中有许多需要商業活动参与执行者参与的过程。此案例仅仅是一种操作的演示具体的分析结果解读,读者可以自行思考也可以将您的***留言到评论區哦。

大家可以思考以下几个问题:

1)哪一类客户是最优质的客户

2)哪一类客户是具有高流失风险的优质客户?

3)哪一类客户是需要进荇Upsell的客户

4)哪一类客户是公司的高成本客户(不赚钱客户)?

消费进度、消费频度、消费额度是测算消费者价值最重要也是最容易的方法这充分的表现了这三个指标对营销活动的指导意义,但不代表这三个指标牢不可破例如嘀嘀(快车、专车、顺风车多业务类型)和支付宝(多功能场景)这种,业务方除了消费额度、消费频度以外在制定补贴策略的时候,还会考虑用户的跨场景使用越多的功能业務场景被使用,意味着用户忠诚度越高这个时候将模型的核心指标增加或者调换,就可以实际应用到辅佐补贴策略上了这也是为什么別人领券能领5块钱,你只能领1块钱别人为啥能领到快车券,你只能领到接机专车券的原因了

参考资料

 

随机推荐