toJson method

Map<String, Object?> toJson()

Implementation

Map<String, Object?> toJson() {
  final Map<String, Object?> t = <String, Object?>{
    if (transform.translation != DVVec3.zero)
      't': transform.translation.toList(),
    if (transform.rotation != DVQuat.identity)
      'r': transform.rotation.toList(),
    if (transform.scale != DVVec3.one) 's': transform.scale.toList(),
  };
  return <String, Object?>{
    'id': id,
    'kind': kind.name,
    if (name != null) 'name': name,
    if (t.isNotEmpty) 'transform': t,
    if (!visible) 'visible': false,
    if (asset != null) 'asset': asset,
    if (material != null) 'material': material,
    if (primitive != null) 'primitive': primitive!.toJson(),
    if (light != null) 'light': light!.toJson(),
    if (camera != null) 'camera': camera!.toJson(),
    if (anchor != null) 'anchor': anchor!.toJson(),
    if (children.isNotEmpty)
      'children': <Object?>[for (final DVSceneNodeData c in children) c.toJson()],
    ..._canonicalMap(extra),
  };
}