chore: rearrange library/export structure

This commit is contained in:
Nick Fisher
2024-09-26 16:35:33 +08:00
parent f023810859
commit 3dffaddfe8
74 changed files with 119 additions and 810 deletions

View File

@@ -1,6 +1,7 @@
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:vector_math/vector_math_64.dart';
import '../../thermion_dart.dart';
abstract class AbstractGizmo {
bool get isVisible;

View File

@@ -1,7 +1,8 @@
import 'dart:async';
import 'package:thermion_dart/thermion_dart/entities/abstract_gizmo.dart';
import 'package:thermion_dart/src/entities/abstract_gizmo.dart';
import 'package:vector_math/vector_math_64.dart';
import '../thermion_viewer.dart';
import '../viewer/viewer.dart';
class Gizmo extends AbstractGizmo {
final ThermionEntity x;

View File

@@ -1,12 +1,10 @@
import 'dart:async';
import 'package:logging/logging.dart';
import 'package:thermion_dart/thermion_dart/input/src/delegates.dart';
import 'package:thermion_dart/thermion_dart.dart';
import 'package:vector_math/vector_math_64.dart';
import '../../viewer/thermion_viewer_base.dart';
import 'implementations/fixed_orbit_camera_rotation_delegate.dart';
import 'implementations/free_flight_camera_delegate.dart';
import 'input_handler.dart';
class DelegateInputHandler implements InputHandler {
final ThermionViewer viewer;

View File

@@ -1,8 +1,8 @@
import 'dart:async';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:thermion_dart/thermion_dart/input/src/delegates.dart';
import 'package:vector_math/vector_math_64.dart';
import '../../../viewer/shared_types/camera.dart';
import '../../../viewer/src/shared_types/camera.dart';
import '../../../viewer/viewer.dart';
import '../../input.dart';
import '../input_handler.dart';
class FixedOrbitRotateInputHandlerDelegate implements InputHandlerDelegate {

View File

@@ -1,8 +1,8 @@
import 'dart:async';
import 'package:thermion_dart/thermion_dart/input/src/input_handler.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:vector_math/vector_math_64.dart';
import '../../../viewer/viewer.dart';
import '../delegates.dart';
import '../input_handler.dart';
class FreeFlightInputHandlerDelegate implements InputHandlerDelegate {

View File

@@ -1,7 +1,8 @@
import 'dart:convert';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:vector_math/vector_math_64.dart';
import '../thermion_dart.dart';
class SceneV2 {
final Map<String, AssetInfo> assets;
final List<LightInfo> lights;

View File

@@ -2,7 +2,8 @@ import 'dart:ffi';
import 'dart:io';
import 'package:ffi/ffi.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_dart.g.dart';
import '../viewer/src/ffi/src/thermion_dart.g.dart';
class DartResourceLoader {
static final _assets = <int, Pointer>{};

View File

@@ -1,7 +1,7 @@
import 'dart:math';
import 'dart:typed_data';
import 'package:thermion_dart/thermion_dart/viewer/shared_types/geometry.dart';
import 'package:thermion_dart/thermion_dart/viewer/thermion_viewer_base.dart';
import '../../thermion_dart.dart';
class GeometryHelper {
static Geometry sphere({bool normals = true, bool uvs = true}) {

View File

@@ -1,5 +1,5 @@
// Helper function to convert double4x4 to Matrix4
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_dart.g.dart';
import 'package:thermion_dart/src/viewer/src/ffi/src/thermion_dart.g.dart';
import 'package:vector_math/vector_math_64.dart';
import 'dart:ffi';

View File

@@ -1,4 +1,3 @@
import 'package:thermion_dart/thermion_dart/viewer/shared_types/entities.dart';
import 'shared_types/shared_types.dart';
///

View File

@@ -1,11 +1,11 @@
import 'dart:ffi';
import 'package:thermion_dart/thermion_dart/utils/matrix.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_dart.g.dart';
import 'package:thermion_dart/thermion_dart/viewer/shared_types/camera.dart';
import 'package:vector_math/vector_math_64.dart';
import '../../../../utils/matrix.dart';
import '../../shared_types/camera.dart';
import '../../thermion_viewer_base.dart';
import 'thermion_dart.g.dart';
class ThermionFFICamera extends Camera {
final Pointer<TCamera> camera;

View File

@@ -1,19 +1,20 @@
import 'dart:async';
import 'dart:ffi';
import 'dart:math';
import 'dart:typed_data';
import 'package:animation_tools_dart/animation_tools_dart.dart';
import 'package:thermion_dart/thermion_dart/entities/gizmo.dart';
import 'package:thermion_dart/thermion_dart/utils/matrix.dart';
import 'package:thermion_dart/thermion_dart/viewer/events.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/callbacks.dart';
import 'package:thermion_dart/thermion_dart/viewer/shared_types/camera.dart';
import 'package:vector_math/vector_math_64.dart';
import 'package:vector_math/vector_math_64.dart' as v64;
import '../../../../entities/gizmo.dart';
import '../../../../utils/matrix.dart';
import '../../events.dart';
import '../../shared_types/camera.dart';
import '../../thermion_viewer_base.dart';
import 'package:logging/logging.dart';
import 'callbacks.dart';
import 'camera_ffi.dart';
import 'thermion_dart.g.dart';
// ignore: constant_identifier_names
const ThermionEntity _FILAMENT_ASSET_ERROR = 0;

View File

@@ -1,6 +1,6 @@
import 'dart:typed_data';
import 'package:thermion_dart/thermion_dart/viewer/thermion_viewer_base.dart';
import '../../viewer.dart';
class Geometry {
final Float32List vertices;

View File

@@ -1,5 +1,5 @@
// "picking" means clicking/tapping on the viewport, and unprojecting the X/Y coordinate to determine whether any renderable entities were present at those coordinates.
import 'package:thermion_dart/thermion_dart/viewer/shared_types/shared_types.dart';
import '../../viewer.dart';
typedef FilamentPickResult = ({ThermionEntity entity, double x, double y});
typedef ThermionPickResult = FilamentPickResult;

View File

@@ -1,5 +1,6 @@
library shared_types;
export 'camera.dart';
export 'material.dart';
export 'texture.dart';
export 'entities.dart';

View File

@@ -1,12 +1,11 @@
import 'package:thermion_dart/thermion_dart/viewer/events.dart';
import 'package:thermion_dart/thermion_dart/viewer/shared_types/camera.dart';
import 'package:thermion_dart/src/viewer/src/events.dart';
import '../../entities/abstract_gizmo.dart';
import 'shared_types/camera.dart';
import 'shared_types/shared_types.dart';
export 'shared_types/shared_types.dart';
import 'dart:math';
import 'dart:typed_data';
import 'package:thermion_dart/thermion_dart/entities/abstract_gizmo.dart';
import 'package:vector_math/vector_math_64.dart';
import 'dart:async';
import 'package:animation_tools_dart/animation_tools_dart.dart';

View File

@@ -1,15 +1,15 @@
import 'dart:math';
import 'dart:typed_data';
import 'package:thermion_dart/thermion_dart/entities/abstract_gizmo.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:thermion_dart/thermion_dart/viewer/events.dart';
import 'package:thermion_dart/thermion_dart/viewer/shared_types/camera.dart';
import 'package:thermion_dart/thermion_dart/viewer/thermion_viewer_base.dart';
import 'package:thermion_dart/thermion_dart.dart';
import 'package:vector_math/vector_math_64.dart';
import 'dart:async';
import 'package:animation_tools_dart/animation_tools_dart.dart';
import '../../entities/abstract_gizmo.dart';
import 'events.dart';
import 'shared_types/camera.dart';
class ThermionViewerStub extends ThermionViewer {
@override
Future addAnimationComponent(ThermionEntity entity) {

View File

@@ -3,14 +3,12 @@ library thermion_flutter_js;
import 'dart:js_interop';
import 'package:logging/logging.dart';
import 'package:thermion_dart/thermion_dart/viewer/web_js/src/thermion_viewer_js_shim.dart';
import 'package:vector_math/vector_math_64.dart' as v64;
import 'package:animation_tools_dart/animation_tools_dart.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'dart:js_interop_unsafe';
import 'package:vector_math/vector_math_64.dart';
import '../../../viewer.dart';
import 'thermion_viewer_js_shim.dart';
///
/// A (Dart) class that wraps a (Dart) instance of [ThermionViewer],

View File

@@ -5,13 +5,11 @@ import 'dart:typed_data';
import 'package:animation_tools_dart/animation_tools_dart.dart';
import 'package:logging/logging.dart';
import 'package:thermion_dart/thermion_dart/entities/abstract_gizmo.dart';
import 'package:thermion_dart/thermion_dart/scene.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:thermion_dart/thermion_dart/viewer/events.dart';
import 'package:thermion_dart/thermion_dart/viewer/shared_types/camera.dart';
import 'package:vector_math/vector_math_64.dart';
import '../../../../entities/abstract_gizmo.dart';
import '../../../viewer.dart';
import '../../events.dart';
import '../../shared_types/camera.dart';
import 'thermion_viewer_js_shim.dart';
///

View File

@@ -3,7 +3,7 @@ library thermion_flutter_js;
import 'dart:js_interop';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import '../../shared_types/shared_types.dart';
///
/// An extension type on [JSObject] that represents a

View File

@@ -1,6 +1,6 @@
import 'package:thermion_dart/thermion_dart/viewer/shared_types/camera.dart';
import 'package:vector_math/vector_math_64.dart';
import '../../shared_types/camera.dart';
import '../../thermion_viewer_base.dart';
class ThermionWasmCamera extends Camera {
@@ -33,4 +33,16 @@ class ThermionWasmCamera extends Camera {
// TODO: implement setTransform
throw UnimplementedError();
}
@override
ThermionEntity getEntity() {
// TODO: implement getEntity
throw UnimplementedError();
}
@override
Future setModelMatrix(Matrix4 matrix) {
// TODO: implement setModelMatrix
throw UnimplementedError();
}
}

View File

@@ -1,4 +1,4 @@
import 'package:thermion_dart/thermion_dart/viewer/shared_types/material.dart';
import '../../../viewer.dart';
class ThermionWasmMaterialInstance extends MaterialInstance {
final int pointer;

View File

@@ -5,16 +5,17 @@ import 'dart:math';
import 'dart:typed_data' as td;
import 'dart:typed_data';
import 'package:logging/logging.dart';
import 'package:thermion_dart/thermion_dart/entities/abstract_gizmo.dart';
import 'package:thermion_dart/thermion_dart/entities/gizmo.dart';
import 'package:thermion_dart/thermion_dart/viewer/events.dart';
import 'package:thermion_dart/thermion_dart/viewer/shared_types/camera.dart';
import 'package:web/web.dart';
import 'package:animation_tools_dart/animation_tools_dart.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:vector_math/vector_math_64.dart';
import 'package:http/http.dart' as http;
import 'dart:convert';
import '../../../../entities/abstract_gizmo.dart';
import '../../../../entities/gizmo.dart';
import '../../../viewer.dart';
import '../../events.dart';
import '../../shared_types/camera.dart';
import 'camera.dart';
import 'material_instance.dart';

View File

@@ -0,0 +1,7 @@
library thermion_viewer;
export 'src/shared_types/shared_types.dart';
export 'src/thermion_viewer_base.dart';
export 'src/thermion_viewer_stub.dart'
if (dart.library.io) 'src/ffi/thermion_viewer_ffi.dart'
if (dart.library.js_interop) 'src/web_wasm/thermion_viewer_web_wasm.dart';

View File

@@ -1,5 +1,5 @@
library filament_dart;
export 'thermion_dart/input/input.dart';
export 'thermion_dart/thermion_viewer.dart';
export 'thermion_dart/utils/geometry.dart';
export 'src/viewer/viewer.dart';
export 'src/input/input.dart';
export 'src/utils/geometry.dart';

View File

@@ -1,6 +0,0 @@
library thermion_viewer;
export 'viewer/thermion_viewer_base.dart';
export 'viewer/thermion_viewer_stub.dart'
if (dart.library.io) 'viewer/ffi/thermion_viewer_ffi.dart'
if (dart.library.js_interop) 'viewer/web/thermion_viewer_wasm.dart';

View File

@@ -1,6 +1,5 @@
import 'package:thermion_dart/thermion_dart.dart';
import 'package:test/test.dart';
import 'package:thermion_dart/thermion_dart/utils/geometry.dart';
import 'package:vector_math/vector_math_64.dart';
import 'helpers.dart';

View File

@@ -5,12 +5,11 @@ import 'package:image/image.dart' as img;
import 'dart:typed_data';
import 'package:ffi/ffi.dart';
import 'package:image/image.dart';
import 'package:thermion_dart/src/swift/swift_bindings.g.dart';
import 'package:thermion_dart/src/utils/dart_resources.dart';
import 'package:thermion_dart/src/viewer/src/ffi/src/thermion_dart.g.dart';
import 'package:thermion_dart/src/viewer/src/ffi/thermion_viewer_ffi.dart';
import 'package:thermion_dart/thermion_dart.dart';
import 'package:thermion_dart/thermion_dart/swift/swift_bindings.g.dart';
import 'package:thermion_dart/thermion_dart/utils/dart_resources.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_dart.g.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_viewer_ffi.dart';
import 'package:vector_math/vector_math_64.dart';
import 'package:path/path.dart' as p;

View File

@@ -1,9 +1,8 @@
import 'package:mockito/mockito.dart';
import 'package:mockito/annotations.dart';
import 'package:test/test.dart';
import 'package:thermion_dart/thermion_dart/input/src/input_handler.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:thermion_dart/thermion_dart/input/src/implementations/fixed_orbit_camera_rotation_delegate.dart';
import 'package:thermion_dart/src/input/src/implementations/fixed_orbit_camera_rotation_delegate.dart';
import 'package:thermion_dart/thermion_dart.dart';
import 'package:vector_math/vector_math_64.dart';
// Generate mocks
@@ -30,7 +29,6 @@ void main() {
delegate = FixedOrbitRotateInputHandlerDelegate(
mockViewer,
entity: mockEntity,
minimumDistance: 1.0,
);
});

View File

@@ -8,13 +8,11 @@ import 'dart:typed_data' as _i8;
import 'package:animation_tools_dart/animation_tools_dart.dart' as _i9;
import 'package:mockito/mockito.dart' as _i1;
import 'package:thermion_dart/thermion_dart/viewer/events.dart' as _i7;
import 'package:thermion_dart/thermion_dart/viewer/shared_types/camera.dart'
as _i3;
import 'package:thermion_dart/thermion_dart/viewer/shared_types/shared_types.dart'
import 'package:thermion_dart/src/viewer/src/events.dart' as _i7;
import 'package:thermion_dart/src/viewer/src/shared_types/camera.dart' as _i3;
import 'package:thermion_dart/src/viewer/src/shared_types/shared_types.dart'
as _i4;
import 'package:thermion_dart/thermion_dart/viewer/thermion_viewer_base.dart'
as _i5;
import 'package:thermion_dart/src/viewer/src/thermion_viewer_base.dart' as _i5;
import 'package:vector_math/vector_math_64.dart' as _i2;
// ignore_for_file: type=lint

View File

@@ -1,14 +1,11 @@
import 'dart:async';
import 'dart:io';
import 'dart:math';
import 'dart:typed_data';
import 'package:image/image.dart';
import 'package:thermion_dart/src/viewer/src/events.dart';
import 'package:thermion_dart/src/viewer/src/ffi/src/thermion_viewer_ffi.dart';
import 'package:thermion_dart/thermion_dart.dart';
import 'package:test/test.dart';
import 'package:animation_tools_dart/animation_tools_dart.dart';
import 'package:thermion_dart/thermion_dart/viewer/events.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_viewer_ffi.dart';
import 'package:vector_math/vector_math_64.dart';
import 'helpers.dart';

View File

@@ -2,16 +2,12 @@ import 'dart:ffi';
import 'dart:io';
import 'dart:math';
import 'package:ffi/ffi.dart';
import 'package:thermion_dart/thermion_dart/swift/swift_bindings.g.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:thermion_dart/thermion_dart/utils/dart_resources.dart';
import 'package:test/test.dart';
import 'package:animation_tools_dart/animation_tools_dart.dart';
import 'package:thermion_dart/thermion_dart/utils/geometry.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_dart.g.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_viewer_ffi.dart';
import 'package:thermion_dart/src/swift/swift_bindings.g.dart';
import 'package:thermion_dart/src/utils/dart_resources.dart';
import 'package:thermion_dart/src/viewer/src/ffi/src/thermion_dart.g.dart';
import 'package:thermion_dart/src/viewer/src/ffi/thermion_viewer_ffi.dart';
import 'package:thermion_dart/thermion_dart.dart';
import 'package:vector_math/vector_math_64.dart';
/// Test files are run in a variety of ways, find this package root in all.

View File

@@ -1,17 +1,10 @@
import 'dart:ffi';
import 'dart:io';
import 'dart:math';
import 'package:ffi/ffi.dart';
import 'package:thermion_dart/thermion_dart/swift/swift_bindings.g.dart';
import 'package:thermion_dart/thermion_dart/thermion_viewer.dart';
import 'package:thermion_dart/thermion_dart/utils/dart_resources.dart';
import 'package:test/test.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_dart.g.dart';
import 'package:thermion_dart/thermion_dart/viewer/ffi/src/thermion_viewer_ffi.dart';
import 'package:vector_math/vector_math_64.dart';
import 'package:thermion_dart/src/swift/swift_bindings.g.dart';
import 'package:thermion_dart/src/utils/dart_resources.dart';
import 'package:thermion_dart/src/viewer/src/ffi/src/thermion_dart.g.dart';
import 'package:thermion_dart/src/viewer/src/ffi/thermion_viewer_ffi.dart';
/// Test files are run in a variety of ways, find this package root in all.
///