Skip to content

Commit 995c138

Browse files
committed
Merge remote-tracking branch 'remotes/origin/develop' into features/area-of-polygons
# Conflicts: # src/PRo3D.Core/SequencedBookmarks/SequencedBookmarks-Model.g.fs # src/PRo3D.Viewer/TraverseApp.fs
2 parents ac1b09b + f281243 commit 995c138

16 files changed

Lines changed: 57 additions & 22 deletions

File tree

PRODUCT_RELEASE_NOTES.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
## 5.3.0-prerelease1
2+
- axis-ellipses added
3+
- area calculation for closed polygons and ellipses included
4+
- surface intersection preview added
5+
16
## 5.1.2
27
- fixed legacy traverse scene file / m20 waypoint loading
38

aardium/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "PRo3D",
33
"productName": "PRo3D.Viewer",
4-
"version": "5.1.2",
4+
"version": "5.3.0-prerelease1",
55
"description": "PRo3D, short for Planetary Robotics 3D Viewer, is an interactive 3D visualization tool to allow planetary scientists to work with high-resolution 3D reconstructions of the Martian surface.",
66
"license": "AGPL",
77
"copyright": "VRVis Zentrum für Virtual Reality und Visualisierung Forschungs-GmbH",

docs/AdvancedAnnotations.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
## Advanced Annotation & Preview picking
2+
3+
4+
Previously PRo3D provided no feedback where the intersection will happen. This one adds a 3D cursor which is continously computes intersections given cursor movements.
5+
It runs in a background thread.
6+
7+
The feature can be explicityly disabled via `--disablePreviewIntersections`
8+
9+
Here is the additional annotation type: https://github.com/pro3d-space/PRo3D/pull/542/commits/54ff51f2545b7727b8bd2121a94a3a90a5d35c83#diff-e3ae8667e8128f79e46ea606a6958260ad62ddc73b7e187fccace130e9f14a01R33
10+
11+
Preview intersections can be controlled via: https://github.com/pro3d-space/PRo3D/pull/542/commits/54ff51f2545b7727b8bd2121a94a3a90a5d35c83#diff-5b8179e37acaceeb2a6bf8b9ce4ceedf9785501303594064bbee53391179b622R88
12+
13+
14+
Async preview pickign is controlled via `PreviewPickSurface` message, see https://github.com/pro3d-space/PRo3D/pull/542/commits/c7435faa1963e592cdd5829157b4c804744d40d9#diff-0e871cb4421e88e1ad3efc5e947173c95acb60eedb089a13a0477143e2199f11R516.
15+
16+
## Caveats
17+
18+
Additional memory footprint due to stressed kdtre cache. The kdtree cache however should be reworked to use a LRU queue or similarly.
19+

src/PRo3D.Base/PRo3D.Base.fsproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
</PropertyGroup>
1919
<ItemGroup>
2020
<!-- <Compile Include="InteropHelpers.fs" /> -->
21-
<Compile Include="KdTrees.fs" />
21+
<!--<Compile Include="KdTrees.fs" />-->
2222
<Compile Include="WebClientDeprecation.fs" />
2323
<Compile Include="DeprecatedModel.fs" />
2424
<Compile Include="DeprecatedModel.g.fs" />

src/PRo3D.Core/SequencedBookmarks/SequencedBookmarks-Model.g.fs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
//9d9091e1-5600-7fb5-3f95-4778d9ab3384
2-
//1e24ccba-0dfd-72a0-1a9b-46d37ccb59c4
2+
//07c4e7cd-6ca4-9380-e8d4-36ba571d6c7c
33
#nowarn "49" // upper case patterns
44
#nowarn "66" // upcast is unncecessary
55
#nowarn "1337" // internal types
@@ -12,11 +12,11 @@ open Adaptify
1212
open PRo3D.Core.SequencedBookmarks
1313
[<System.Diagnostics.CodeAnalysis.SuppressMessage("NameConventions", "*")>]
1414
type AdaptiveSequencedBookmarkModel(value : SequencedBookmarkModel) =
15-
let mutable _name_ = FSharp.Data.Adaptive.cval(value.name)
16-
let mutable _path_ = FSharp.Data.Adaptive.cval(value.path)
1715
let mutable _cameraView_ = FSharp.Data.Adaptive.cval(value.cameraView)
1816
let mutable _filename_ = FSharp.Data.Adaptive.cval(value.filename)
1917
let mutable _key_ = FSharp.Data.Adaptive.cval(value.key)
18+
let mutable _path_ = FSharp.Data.Adaptive.cval(value.path)
19+
let mutable _name_ = FSharp.Data.Adaptive.cval(value.name)
2020
let _bookmark_ = PRo3D.Core.AdaptiveBookmark(value.bookmark)
2121
let _metadata_ = FSharp.Data.Adaptive.cval(value.metadata)
2222
let _frustumParameters_ = FSharp.Data.Adaptive.cval(value.frustumParameters)
@@ -41,11 +41,11 @@ type AdaptiveSequencedBookmarkModel(value : SequencedBookmarkModel) =
4141
if Microsoft.FSharp.Core.Operators.not((FSharp.Data.Adaptive.ShallowEqualityComparer<SequencedBookmarkModel>.ShallowEquals(value, __value))) then
4242
__value <- value
4343
__adaptive.MarkOutdated()
44-
_name_.Value <- value.name
45-
_path_.Value <- value.path
4644
_cameraView_.Value <- value.cameraView
4745
_filename_.Value <- value.filename
4846
_key_.Value <- value.key
47+
_path_.Value <- value.path
48+
_name_.Value <- value.name
4949
_bookmark_.Update(value.bookmark)
5050
_metadata_.Value <- value.metadata
5151
_frustumParameters_.Value <- value.frustumParameters
@@ -56,11 +56,11 @@ type AdaptiveSequencedBookmarkModel(value : SequencedBookmarkModel) =
5656
_duration_.Update(value.duration)
5757
_observationInfo_.Update(value.observationInfo)
5858
member __.Current = __adaptive
59-
member __.name = _name_ :> FSharp.Data.Adaptive.aval<Microsoft.FSharp.Core.string>
60-
member __.path = _path_ :> FSharp.Data.Adaptive.aval<Microsoft.FSharp.Core.string>
6159
member __.cameraView = _cameraView_ :> FSharp.Data.Adaptive.aval<Aardvark.Rendering.CameraView>
6260
member __.filename = _filename_ :> FSharp.Data.Adaptive.aval<Microsoft.FSharp.Core.string>
6361
member __.key = _key_ :> FSharp.Data.Adaptive.aval<System.Guid>
62+
member __.path = _path_ :> FSharp.Data.Adaptive.aval<Microsoft.FSharp.Core.string>
63+
member __.name = _name_ :> FSharp.Data.Adaptive.aval<Microsoft.FSharp.Core.string>
6464
member __.version = __value.version
6565
member __.bookmark = _bookmark_
6666
member __.metadata = _metadata_ :> FSharp.Data.Adaptive.aval<Microsoft.FSharp.Core.option<Microsoft.FSharp.Core.string>>

src/PRo3D.Core/Traverse-Model.g.fs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//4e38c644-867c-783b-1111-2776d7c97950
1+
//89d392ae-36bd-a5b1-961d-8aa759096e16
22
//a72739d7-0c27-cc36-4689-a3f0d8b9df9c
33
#nowarn "49" // upper case patterns
44
#nowarn "66" // upcast is unncecessary

src/PRo3D.Core/ViewConfigModel.fs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ module ViewConfigModel =
186186
//useSurfaceHighlighting = true
187187
showExplorationPointGui = true
188188
showLeafLabels = false
189-
showPreviewIntersection = true
189+
showPreviewIntersection = false
190190
previewIntersectionWorldSize = previewIntersectionWorldSize
191191
}
192192

@@ -222,7 +222,7 @@ module ViewConfigModel =
222222
filterTexture = false
223223
showExplorationPointGui = true
224224
showLeafLabels = false
225-
showPreviewIntersection = true
225+
showPreviewIntersection = false
226226
previewIntersectionWorldSize = previewIntersectionWorldSize
227227
}
228228
}
@@ -259,7 +259,7 @@ module ViewConfigModel =
259259
filterTexture = false
260260
showExplorationPointGui = true
261261
showLeafLabels = false
262-
showPreviewIntersection = true
262+
showPreviewIntersection = false
263263
previewIntersectionWorldSize = previewIntersectionWorldSize
264264
}
265265
}
@@ -298,7 +298,7 @@ module ViewConfigModel =
298298
filterTexture = false
299299
showExplorationPointGui = true
300300
showLeafLabels = false
301-
showPreviewIntersection = true
301+
showPreviewIntersection = false
302302
previewIntersectionWorldSize = previewIntersectionWorldSize
303303
}
304304
}
@@ -335,7 +335,7 @@ module ViewConfigModel =
335335
filterTexture = filterTexture
336336
showExplorationPointGui = true
337337
showLeafLabels = false
338-
showPreviewIntersection = true
338+
showPreviewIntersection = false
339339
previewIntersectionWorldSize = previewIntersectionWorldSize
340340
}
341341
}
@@ -377,7 +377,7 @@ module ViewConfigModel =
377377
filterTexture = filterTexture
378378
showExplorationPointGui = if showExplorationPointGui.IsSome then showExplorationPointGui.Value else true
379379
showLeafLabels = false
380-
showPreviewIntersection = Option.defaultValue true showPreviewIntersection'
380+
showPreviewIntersection = Option.defaultValue false showPreviewIntersection'
381381
previewIntersectionWorldSize = { previewIntersectionWorldSize with value = Option.defaultValue previewIntersectionWorldSize.value previewIntersectionWorldSize' }
382382
}
383383
}

src/PRo3D.Core/ViewConfigModel.g.fs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//1d0054e1-e6be-b8ec-f62a-9c651ffe17bc
1+
//57b9242c-047a-0ff9-986f-7c551ccc57e7
22
//70d32aec-d119-7ea2-fc09-332a209fd05e
33
#nowarn "49" // upper case patterns
44
#nowarn "66" // upcast is unncecessary

src/PRo3D.Viewer/CommandLine/CommandLine.fs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,8 @@ module CommandLine =
7373

7474
let spiceKernelPath = parseArg "--defaultSpiceKernel" argv
7575

76+
let disablePreviewIntersections = argv |> hasFlag "disablePreviewIntersections"
77+
7678
Log.line "[Arguments] Server mode: %s" (b2str server)
7779
Log.line "[Arguments] Using linear magnification filtering%s" (b2str magFilter)
7880
Log.line "[Arguments] Show exploration centre%s" (b2str showExplorationCentre)
@@ -103,5 +105,6 @@ module CommandLine =
103105
isBatchRendering = false
104106
defaultSpiceKernelPath = spiceKernelPath
105107
loadScene = loadScene
108+
allowPreviewIntersections = not disablePreviewIntersections
106109
}
107110
args

src/PRo3D.Viewer/Config.fs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@ module Config =
1616
let mutable title = "PRo3D"
1717

1818

19-
let previewIntersections = true
19+
let mutable previewIntersections = true
2020

2121
let diagnosticTimings = false

0 commit comments

Comments
 (0)