首页
学习
活动
专区
圈层
工具
发布

【Groovy】自定义 Xml 生成器 BuilderSupport ( setParent 方法中设置父节点与子节点关系 )

文章目录 一、setParent 方法中设置父节点与子节点关系 二、完整代码示例 1、MyBuilderSupport 生成器代码 2、使用 MyBuilderSupport 生成器创建 Xml 代码...一、setParent 方法中设置父节点与子节点关系 ---- 在自定义的 Xml 生成器 MyBuilderSupport 中的 setParent 方法是设置节点之间父子关系的方法 , 在调用了...* @param parent Xml 中的父节点 * @param child Xml 中的父节点下的子节点 */ @Override protected..., 在 createNode 方法中 , 输出 student, null, null 内容 , 说明该节点只有节点名称 , 没有节点属性与节点值 ; 创建 节点时 , 输出 name,..., name 节点是子节点 ; 创建 节点时 , 输出 age, null, 18 setParent parent : student , child : age 该节点名称是 age

94720

Golang语言情怀--第128期 全栈小游戏开发:第19节:glTF 模型

URI 解析 Creator 支持 glTF 中指定以下形式的 URI: Data URI 相对 URI 路径 文件 URL 文件路径 转换关系 当导入 glTF 模型到 Creator 时,glTF...中的资源将会按照以下关系转换为 Creator 中的资源: glTF 资源 Cocos Creator 资源 glTF 场景 预制体 glTF 网格 网格 glTF 蒙皮 骨骼 glTF 材质 材质 glTF...贴图 贴图 glTF 图像 图像 glTF 动画 动画剪辑 glTF 场景 导入后,glTF 场景将转换为 Creator 中的预制体资源,glTF 场景中递归包含的节点也将按照相同层级关系一一转换为预制体中的节点...场景根节点 预制体将使用一个不带任何空间转换信息的节点作为根节点,glTF 场景的所有 根节点 将作为该节点的子节点。...节点转换 glTF 节点中的属性将按照下表中的映射关系转换为预制体节点中的属性: glTF 节点属性 预制体节点属性 层级关系 层级关系 位移 位置 旋转 旋转 缩放 缩放 矩阵 解压,并分别设置位置、

56710
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    LDAP概述

    LDAP中条目的组织一般按照地理位置和组织关系进行组织,非常的直观。LDAP把数据存放在文件中,为提高效率使用基于索引的文件数据库,而不是关系数据库。...在LDAP目录中,根条目是概念性的,不作为一个可以存放数据的条目存在。 第二是目录的每个节点都可以包含数据,任何节点都可能作为一个容器,即LDAP条目允许在他的下面有子节点。...文件系统的每个节点或者是文件或者是目录,但不能同时是二者。在文件系统中,只有目录可以有子节点,而且只有文件可以包含数据。LDAP中的条目既可以是数据同时也可以兼任目录的角色。...第三是节点命名方式的不同。LDAP名称与文件系统名称的方向是相反的。...根据取回的条目内容,查询操作分为三种:一种是单个节点查询,是指查询指定了路径的条目的具体节点,这通常用来在目录中查找一个具体的条目;二是子节点查询,是指查询给出条件的节点的下级的条目;三是子树查询,是指查询从给出的条目为根的整个子树的所有条目

    3.7K30

    gltfOverview中文翻译

    概念 glTF资产顶层元素之间的概念关系如下图: ? 二进制数据引用 glTF资产的images和buffers可以引用包含呈现3d内容的外部文件。...每个nodes可以包含子节点的索引数组。这就允许通过模型来表达一个场景的层次关系。 ? 一个node可以包含本地变换。...然后会将这些元素附加到node节点。如下图: ? 在渲染期间,这些元素的实例会被创建和采用全部的变换矩阵变换。...下图示例描述了values 和indices 还有数据的关系。 ? materials 每个网格体都可能指向glTF资产中的某个material。...cameras 每个node节点都可以引用定义在glTF资产中的camera。有两种类型的camera:perspective(透视)和orthographic(正交),他们都定义了一个投影矩阵。

    2K40

    glTF简介

    上图是glTF的一个大概结构,分为四大块,最上面的json是一个表述,描述该模型的节点层级,材质,相机,动画等相关逻辑结构,bin则对应这些对象的具体数据信息,glsl是对该模型渲染的着色器,针对该模型的数据信息...2 glTF渲染 东西再好,光说不练假把式。设计好了,只是一个开始而不是完结,还需要持续的推广和应用。这年头酒香也怕巷子深,伯牙难觅钟子期的画面有没有。...因此glTF还包含整个场景的关系,包括节点,变换矩阵,变换的层级关系,网格,材质,相机和动画,试图保存所有信息。这是一个场景树的逻辑,算是glTF的一个优化。...如上图,该Scene中有三个node,其实Cesium_Air节点对应的mesh名字为Geometry-mesh090,他还有两个子节点。...其中包括TIME计时器,samplers插值方式,所对应的动画节点和具体的属性(比如rotation)。这样每一帧会更新对应的值。 3 总结 如上是glTF的一个介绍,下面来谈几点个人的想法。

    3.8K100

    模型交换格式glTF概述

    几何属性 除去以上三个结构与数据存取相关外,其余的结构都用来标识模型的几何信息,这些信息一定程度上是通用的,只是不同文件格式会设计不同的方式存储它们。...scenes、nodes scenes是场景的根节点,包含了若干个nodes,nodes本身也是树状结构,可以包含若干个子节点,共同组成一个场景。...变换: 在三维模型里,骨骼就等同于变换,所以如果使用glTF存储角色模型,通常把就骨骼信息存储为node节点,存储的方式可以是矩阵,也可以是rotate、scale、transform三个三元数组,二者表达的信息是等价的...image.png 网格: 骨骼末梢的节点通常是网格(mesh)节点,它们是真正参与绘制的单元(这意味着如果输出一个没有mesh的glTF,是不会渲染出任何内容的)。...注意,glTF格式也使用了普遍的假定——每个顶点最多受到四块骨骼影响,所以JOINTS和WEIGHTS数组的长度通常是顶点数组的4倍。 三者之间的引用关系以下图表示。

    4.7K52

    WebGL+Three.js入门与实战:18章完结系统学习Web3D技术深度解析

    一、技术入门:厘清 “WebGL 与 Three.js” 的关系,避开入门误区很多初学者会陷入 “先学 WebGL 底层还是直接用 Three.js” 的纠结,课程 1-3 章的核心价值就在于 “搭建正确的技术认知...章节范围模块主题核心能力目标1-3 章技术入门与环境搭建理解 WebGL 与 Three.js 关系,掌握 Three.js 基础环境配置(含 CDN 引入、npm 集成、开发工具选型)4-8 章3D...)14-16 章复杂项目实战完成企业级场景开发(如 3D 产品展厅、数据可视化大屏、简单 3D 游戏 demo)17-18 章性能优化与部署解决 3D 项目的卡顿、加载慢问题,掌握项目上线流程(含模型压缩...使用 GLTFLoader 的加载管理器(LoadingManager),监听所有模型的加载进度,生成 “加载进度条”,避免用户因等待时间过长而离开;场景切换与视角记忆:将不同产品的 3D 场景封装为独立模块...Three.js 的模型层级管理(如将汽车模型拆分为 “车身、车门、车轮” 子节点),单独控制子节点的状态。

    40510

    【征文计划】JSAR实战:从零开始的空间小程序开发之旅

    selectorstring在被引用的模型中选择具体节点(选择器字符串)。用法要点:通过 ref 指向已经通过 引入的模型资源;selector 用于精确到模型中的某个节点。...用法要点:size 与 width/height 建议二选一。...用法要点:大小不可手动设置,依据层级内的子元素计算边界。其边界通常反映父节点的整体包围盒(而父的尺寸来自其子元素)。内部实现为 Babylon.js 的 TransformNode。...需要调试层级边界时,在目标父节点下添加 以可视化/计算包围盒(大小由子元素决定)。...如果超出限制,可以:模型压缩:使用gltf-transform工具npm install -g @gltf-transform/cli# 压缩GLTF模型gltf-transform optimize

    9800

    【修正版】7张图带你轻松入门RocketMQ

    这个 tag 的作用非常重要,假如一个 Consumer 订阅了 TopicA,Tag1 和 Tag2,那这个 Consumer 的订阅关系如下图: 可以看到,这个订阅关系是一个 hash 类型的结构...拉取消息时,首先从 Name Server 获取订阅关系,得到当前 Consumer 所有订阅 tag 的 hashcode 集合 codeSet,然后从 ConsumerQueue 获取一条记录,判断最后...CommitLog 文件中的物理偏移量,第五个元素表示当前这个 Index 文件中 hash 槽的数量,第六个元素表示当前这个 Index 文件中索引条目的个数。...Index 文件中的 Hash 槽有 500 万个数组元素,每个元素是 4 个字节 int 类型元素,保存当前槽下最新的那个 index 条目的序号。...pre index no 保存的是当前的 Hash 槽中前一个 index 条目的序号,一般在 key 发生 Hash 冲突时才会有值,否则这个值就是 0,表示当前元素是 Hash 槽中第一个元素。

    2.4K51

    WebGL简易教程(十五):加载gltf模型

    3D模型文件格式一般是与图形渲染工作强关联的,了解3D模型文件格式的组成,有助于进一步了解图形渲染的流程。...从以上特性可以看出,glTF特别方便与互联网的使用场景,便于传输且预处理程度小。在这篇教程中,就通过一个带纹理的地形文件,具体解析以下glTF格式,顺便加深一下WebGL中初始化数据的理解。 2....scene是整个场景的入口,0表示scenes数组的第一个;scenes节点又包含了一个nodes数组,其中每个nodes对象包含一个children数组,这一数组引用了nodes对象的所有子结点。...mesh则表示场景节点中的几何对象。 2.2.2.2....samplers是一个采样器,用于设置纹理具体的采样方式,其设置参数与WebGL中设置纹理的方式向对应。 2.2.3.

    5.6K20

    i3s 一种开源的三维地理数据规范 简单解读

    ============= 为了确保与1.6版本的兼容性,1.7的i3s标准还需要包括3dNodeIndexDocument.json描述文件,以及可用于任何节点的sharedResources目录。...1.7版本的i3s为了保证与1.6的兼容,保留了shared目录和3dNodeIndexDocument.json.gz文件(节点描述文件)。 那么,如何查询每个json描述文件的各个属性的定义呢?...3.2. i3s 1.6版本 建筑slpk BIM数据是有多个分层的(楼板、机电、门窗、外立面等),每个分层用子图层(sublayers)表示。...同类标准3dtiles/gltf与s3m 既然说到标准,就不得不提一下同类竞争对手。.../s3m/i3s/3dtiles我了解的不多,甚至不了解gltf和3dtiles的关系,但是它们的共同特点是:都使用树结构描述一个三维数据(不一定是地理数据),都使用json文件描述数据,都使用二进制文件存储数据

    2.2K10

    数据结构之Trie字典树

    例如,在一个字典中有 $n$ 个条目,如果使用普通的二分搜索树(不考虑退化),那么在该字典中查询指定条目的时间复杂度是 $O(logn)$,如果有100w个条目($2^{20}$),$logn$ 大约为...而如果使用 Trie 树的话,查询每个条目的时间复杂度,和字典中一共有多少条目无关。时间复杂度为 $O(w)$,其中 $w$ 为查询单词的长度,而且绝大多数的单词长度都小于 10。...那么 Trie 树是如何做到其查询时间复杂度与条目数量无关的呢?这是因为 Trie 树的本质,就是利用字符串之间的公共前缀,将重复的前缀合并在一起。...其中,根节点不包含任何信息。每个节点表示一个字符串中的字符,从根节点到红色节点的一条路径表示一个字符串(注意:红色节点并不都是叶子节点)。...char c = word.charAt(i); if (current.next.get(c) == null) { // 没有与之对应的子节点

    94020

    raft论文学习-safety

    candidate节点为了赢得选举必须与集群中的过半的节点通信,而已提交的日志条目肯定存储到了过半的节点上,那么与candidate进行通信的节点中至少有一个节点包含有所有已经提交的日志。...在(b)中,S1崩溃了,然后S5在任期3通过节点S3、S4和自己赢得选举,然后从客户端接收了一条新的日志条目放在了索引2处。...但是从raft规则的角度来看,「这不满足raft规则:一条日志一旦被复制到了多数节点上,就认为这条日志是commit状态,这条日志是不能被覆盖的」,但是现在却被覆盖了!!! 那怎么办呢?...创建leader U最后一个日志条目的之前的leader一定已经包含了该已被提交的日志条目。...leader选举是raft中定时最关键的要素,只要整个系统满足下面的关系,raft就可以选举并维持一个稳定的leader.

    47010

    Raft 详解

    1.2 日志复制Leader 负责接收客户端的写请求,并将这些写请求以日志条目的形式追加到自己的日志中。一旦 Leader 收到一条新的日志条目,它会将这个条目发送给所有的 Follower 节点。...一旦一条日志被提交,Leader 会通知所有节点该条目已经被提交,这时节点可以将这个日志应用到它们的状态机中。...请求投票包括候选者的选举 term、候选者的 ID、候选者的最后日志条目的索引和任期。节点在收到请求投票 RPC 后,会检查候选者的信息,并根据自己的状态判断是否投票给该候选者。...心跳 RPC 实际上是一种特殊的附加日志条目 RPC,其不包含日志内容,仅用于维持 Leader 与 Followers 之间的连接。...Followers 需要确保 Leader 发送的日志条目与自己的日志保持一致。这包括比较 Leader 发送的每一条日志条目的 term 和索引。

    49910

    听GPT 讲Rust Cargo源代码(7)

    value: Value }:表示一个具体的键值对(key-value)条目,其中 Key 是一个字符串,表示条目的键,Value 则表示条目的值。...add_array_of_tables:向表格中添加一个数组类型的表格条目。 update_value:更新表格中一个具体的键值对条目的值。 remove_entry:从表格中移除一个条目。...运行过程中,Cargo会处理运行时依赖关系、环境变量设置、参数传递等等。这个方法也支持一些子命令,比如只编译不运行、运行特定的二进制文件等。 new(): 这个方法实现了创建新项目的功能。...Edges结构体的作用是提供一个用于查找节点之间依赖关系的数据结构。 接下来是Graph结构体,它表示了一个节点。每个节点可以有多个出边,每条出边都指向一个不同的节点。...Graph结构体的作用是保存节点的信息,包括节点的名称、依赖关系等。 而Node和EdgeKind是两个枚举类型。

    33410

    PDF Explained(翻译)第四章 文档结构

    /Names 字典 名称字典,名称到条目的映射。 /Dests 字典 该字典将名称映射至目的地。目的地是对超链接跳转位置的描述。...没有子节点的节点(页节点)就是页面。 下图显示了由七个页构成的页面树。 ?...(*为必选) 键 值类型 值 /Type* 名称 必须是/Pages /Kids* 间接引用数组 该节点的直接子页面树节点。.../Count* 整数 该节点的子节点数量 /Parent 页面树节点的间接引用 指向该节点的父节点。除根节点外,所有节点必须有此条目。...四位年份,例如2008年 MM 月份,从01到12的两位数 DD 日期,从01到31的两位数 HH 小时,从00到23的两位数 mm 分钟,从00到59两位数 SS 秒,从00到59两位数 O 本地时间与世界时的关系

    1.3K20

    五分钟了解一致性算法 -- Raft算法

    Raft只是个共识算法来保证数据的一致性,与数据库、客户端、事务没有关系 Raft算法基础 Raft把算法流程分为三个子问题:领导选举(Leader election)、日志复制(Log replication...我们看下是如何进行同步的 日志结构 Raft算法中,每个节点维护着一份日志,其中包含了系统中所有状态变更的记录,每一次状态变更被称为一个日志条目。...如果一条日志记录被存储在超过半数的节点上,我们认为该记录已提交(committed)——这是 Raft 非常重要的特性!...prevLogIndex 、 prevTerm 进行匹配 匹配成功则接收该记录,添加最新log,匹配失败则拒绝该消息 日志一致性 Raft算法的目的是保证所有节点的一致性,即一个日志条目在某个节点被提交...,那么这个日志条目也必须在所有节点上被提交。

    84211

    VxLAN

    VXLAN本质上是一种隧道技术,在源网络设备与目的网络设备之间的IP网络上,建立一条逻辑隧道,将用户侧报文经过特定的封装后通过这条隧道转发。...从交换机的角度来看,只是不同的 VTEP 之间在传递 UDP 数据,只需要记录与物理机数量相当的 MAC 地址表条目就可以了,一切又回到了和从前一样。...对于CloudEngine系列交换机而言,BD与VNI是1:1的映射关系,这种映射关系是通过在VTEP设备上配置命令行建立起来的,配置样例如下: bridge-domain 10 //表示创建一个“大二层广播域...”BD,其编号为10 vxlan vni 5000 //表示在BD 10下,指定与之关联的VNI为5000 VTEP设备会根据以上配置生成BD与VNI的映射关系表,该映射表可以通过命令行查看,如下所示...同时,VTEP_1学习MAC_A、VNI和报文入接口(Port_1,即二层子接口对应的物理接口)的对应关系,并记录在本地MAC表中。

    1K51
    领券