mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-03 01:50:24 +08:00
Added OBJ texture policy option (keep color on textureless polygons)
This commit is contained in:
@@ -150,11 +150,12 @@ bool exportMeshNative(
|
||||
int optimizedMinClusterSize,
|
||||
float optimizedMaxTextureDistance,
|
||||
int optimizedMinTextureClusterSize,
|
||||
int textureVertexColorPolicy,
|
||||
bool blockRendering)
|
||||
{
|
||||
if(object)
|
||||
{
|
||||
return native(object)->exportMesh(cloudVoxelSize, regenerateCloud, meshing, textureSize, textureCount, normalK, optimized, optimizedVoxelSize, optimizedDepth, optimizedMaxPolygons, optimizedColorRadius, optimizedCleanWhitePolygons, optimizedMinClusterSize, optimizedMaxTextureDistance, optimizedMinTextureClusterSize, blockRendering);
|
||||
return native(object)->exportMesh(cloudVoxelSize, regenerateCloud, meshing, textureSize, textureCount, normalK, optimized, optimizedVoxelSize, optimizedDepth, optimizedMaxPolygons, optimizedColorRadius, optimizedCleanWhitePolygons, optimizedMinClusterSize, optimizedMaxTextureDistance, optimizedMinTextureClusterSize, textureVertexColorPolicy, blockRendering);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -55,6 +55,7 @@ bool exportMeshNative(
|
||||
int optimizedMinClusterSize,
|
||||
float optimizedMaxTextureDistance,
|
||||
int optimizedMinTextureClusterSize,
|
||||
int textureVertexColorPolicy,
|
||||
bool blockRendering);
|
||||
bool postExportationNative(const void *object, bool visualize);
|
||||
bool writeExportedMeshNative(const void *object, const char * directory, const char * name);
|
||||
|
||||
@@ -197,6 +197,7 @@ class RTABMap {
|
||||
optimizedMinClusterSize: Int,
|
||||
optimizedMaxTextureDistance: Float,
|
||||
optimizedMinTextureClusterSize: Int,
|
||||
textureVertexColorPolicy: Int,
|
||||
blockRendering: Bool) -> Bool
|
||||
{
|
||||
return exportMeshNative(native_rtabmap,
|
||||
@@ -215,6 +216,7 @@ class RTABMap {
|
||||
Int32(optimizedMinClusterSize),
|
||||
optimizedMaxTextureDistance,
|
||||
Int32(optimizedMinTextureClusterSize),
|
||||
Int32(textureVertexColorPolicy),
|
||||
blockRendering)
|
||||
}
|
||||
|
||||
|
||||
@@ -1870,6 +1870,7 @@ class ViewController: GLKViewController, ARSessionDelegate, RTABMapObserver, UIP
|
||||
let optimizedColorRadius = defaults.float(forKey: "ColorRadius")
|
||||
let optimizedCleanWhitePolygons = defaults.bool(forKey: "CleanMesh")
|
||||
let optimizedMinClusterSize = defaults.integer(forKey: "PolygonFiltering")
|
||||
let textureVertexColorPolicy = defaults.integer(forKey: "TextureVertexColorPolicy")
|
||||
let blockRendering = false
|
||||
|
||||
var indicator: UIActivityIndicatorView?
|
||||
@@ -1924,6 +1925,7 @@ class ViewController: GLKViewController, ARSessionDelegate, RTABMapObserver, UIP
|
||||
optimizedMinClusterSize: optimizedMinClusterSize,
|
||||
optimizedMaxTextureDistance: maxTextureDistance,
|
||||
optimizedMinTextureClusterSize: minTextureClusterSize,
|
||||
textureVertexColorPolicy: textureVertexColorPolicy,
|
||||
blockRendering: blockRendering)
|
||||
|
||||
}, completion:{
|
||||
|
||||
@@ -320,6 +320,34 @@
|
||||
<key>DefaultValue</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
<key>FooterText</key>
|
||||
<string>Standard OBJ format has colorless polygons where there is no texture. This policy can add color to vertex when exporting the OBJ.</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Type</key>
|
||||
<string>PSMultiValueSpecifier</string>
|
||||
<key>Title</key>
|
||||
<string>Texture Vertex Color Policy</string>
|
||||
<key>Key</key>
|
||||
<string>TextureVertexColorPolicy</string>
|
||||
<key>DefaultValue</key>
|
||||
<integer>0</integer>
|
||||
<key>Titles</key>
|
||||
<array>
|
||||
<string>Colorless (standard OBJ)</string>
|
||||
<string>Keep color only on textureless polygons</string>
|
||||
<string>Keep all color</string>
|
||||
</array>
|
||||
<key>Values</key>
|
||||
<array>
|
||||
<integer>0</integer>
|
||||
<integer>1</integer>
|
||||
<integer>2</integer>
|
||||
</array>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Type</key>
|
||||
<string>PSGroupSpecifier</string>
|
||||
|
||||
Reference in New Issue
Block a user