RoomPlan

RSS for tag

Create parametric 3D scans of rooms and room-defining objects.

RoomPlan Documentation

Posts under RoomPlan tag

91 Posts
Sort by:
Post marked as solved
2 Replies
496 Views
I have a tracking issung with the latest beta 17.4 and want to know if anyone encountered the same problem. My app is using the pause=false functionality for multiroom that apple provided to let the ARSession run in the background: roomCaptureView?.captureSession.stop(pauseARSession: false) When resuming the scan/scanning the next room I initialize a new RoomCaptureView with the running ARSession: let roomCaptureView = RoomCaptureView(frame: rcvc.view.bounds, arSession: arSession!) This worked fine on all previous versions and different devices. Since the update to 17.4 I noticed that the tracking will be lost after initializing the next scan which feels like the pauseARSession is not working (the ARSession has still the same ID) Devices: This behaviour/error does not occur on devices with 17.3 or lower: 15 Pro Max, 14 Pro Max, 13 Pro This behaviour/error occures on devices with 17.4: 15 Pro Max, 14 Pro Max If anyone has noticed the same issue I would like to know that I'm not the only one. Thanks.
Posted Last updated
.
Post not yet marked as solved
0 Replies
235 Views
Is there any working sample code that demonstrates the 2nd multiroom approach, i.e., capture multiple rooms over more than one scan session using the ARWorldMap approach that's described in the WWDC presentation? I've tried working from the code snippets provided in the transcript but cannot get it working reliably enough.
Posted
by ajpro.
Last updated
.
Post not yet marked as solved
0 Replies
268 Views
I am using the room plan api to implement the function of multiple space merging, but I found that after performing multiple space merging, the generated json would miss some of the newly added areas, but the usd file and plist file were complete.Does anyone have this problem? Look forward to official support this is my code: public func mergeScan(_ data:String,_ scanName:String,_ directoryName:String){ var capturedRoomArray: [CapturedRoom] = [] //解析主结构 let jsonURL = getRootURL().appending(path: "/\(directoryName)/\(scanName)/scan.json") guard let mainStructureRoom = try?loadCapturedRoom(from: jsonURL) else { return } capturedRoomArray.append(mainStructureRoom) // 添加子结构 if let subStructureRoom = try? loadCapturedRoom(from: data) { os_log("loadCapturedRoom string data success: %@", type: .error, String(describing: data)) capturedRoomArray.append(subStructureRoom) } os_log("merge scan capturedRoomArray: %@", type: .error, String(describing: capturedRoomArray.count)) //合并 Task { do { finalStructureResults = try await structureBuilder.capturedStructure(from: capturedRoomArray) }catch { print("Merging Error:\(error.localizedDescription)") return } do{ //保存 //导出json guard let finalStructureResults else { return } try exportJson(from: finalStructureResults, to: jsonURL) //导出usd let meshDestinationURL = jsonURL.deletingPathExtension().appendingPathExtension("usdz") //导出plist let metadataDestinationURL = jsonURL.deletingPathExtension().appendingPathExtension("plist") try finalStructureResults.export(to: meshDestinationURL, metadataURL: metadataDestinationURL, exportOptions: [.mesh]) } catch { print("Merge Error:\(error.localizedDescription)") return } } } func exportJson(from capturedStructure: CapturedStructure, to url: URL) throws { let encoder = JSONEncoder() encoder.outputFormatting = [.prettyPrinted, .sortedKeys] let data = try encoder.encode(capturedStructure) try data.write(to: url) } Note: Only json is missing the content of this or the next scan, usdz and plist are complete
Posted
by shuyuan.
Last updated
.
Post not yet marked as solved
0 Replies
220 Views
I am scanning with ios17.2 on iphone12/ iPad with M1 attributes is always an empty array although I can see object categories and dimensions. They are not in the CapturedRoom object at the end or during the scan (printing the capturedRoom objects ), nor in the JSON export. what am I missing? Model provider can see them so it seems the data is in the unreadable "coreModel":"\/cCE2z0D7YOs5AV+590PFcMLD75UZjfuGUoGD8......"
Posted
by ubicolor.
Last updated
.
Post marked as solved
1 Replies
354 Views
I want to have realtime image anchor tracking together with RoomPlan. But it's frustrating to not seeing any thing that can support this. Because it is useful to have interactive things in the scanned room. Ideally it should be running the same time, but if not possible, how do you align the two tracking space if running RoomPlan and then ARKit image tracking? sounds like headache
Posted
by nuaayxy.
Last updated
.
Post not yet marked as solved
0 Replies
282 Views
how can we change the image quality, size, camera and cadence used during RoomPlan's scanning. We are getting the images from RoomCaptureSession.
Posted
by Ramneet.
Last updated
.
Post not yet marked as solved
0 Replies
322 Views
Error: RoomCaptureSession.CaptureError.exceedSceneSizeLimit Apple Documentation Explanation: An error that indicates when the scene size grows past the framework’s limitations. Issue: This error is popping up in my iPhone 14 Pro (128 GB) after a few roomplan scans are done. This error shows up even if the room size is small. It occurs immediately after I start the RoomCaptureSession after the relocalisation of previous AR session (in world tracking configuration). I am having trouble understanding exactly why this error shows and how to debug/solve it. Does anyone have any idea on how to approach to this issue?
Posted
by amarjyoti.
Last updated
.
Post not yet marked as solved
2 Replies
435 Views
Is there a way to handle Roomplan ExceededSceneSizelimitError. in documentation also there is nothing . For me after taking just small small scans about 5 to 6 after the 7 th scan getting this error . only killing the app and restarting is working, if i come to back page and again go to start newscan also it is not working
Posted Last updated
.
Post marked as solved
6 Replies
453 Views
Im working on Apple RoomPlanAPI MergescansFeature which is an update of ios17. In this it is said mergescans can be done in 2 ways continuous ARsession ARRelocalization I've worked on ARRelocalization . I take a first scan and then come nextday and want to take another scan . can we start the scan anywhere in that particular house. and can merge them. Because currently what I was doing was I take a scan and when i stop the scan ..then save the world map like the snapshot/anchors of that point where I've stopped the scan and again come nextday and start a scan then load the saved map... it says we should go where we've stopped the last scan then only it will sense the environment and it relocalizes with the previous scan coordinatesystem. now we can take a scan and these 2 can be merged. but now what i want was i will take a scan and due to some reasons i didn't take the bedroom of the house now I'll come next day and want to take only the bedroom scan can i start it from the bedroom scan directly without going to the last point where we stopped the scan and merge these two scans? is it even possible?
Posted Last updated
.
Post not yet marked as solved
0 Replies
473 Views
We scan the room using the RoomPlan API, and after the scan, we obtain objects with a white color along with shadows and shading. However, upon updating the color of these objects, we experience a loss of shadows and shading. RoomPlan scan After Update
Posted Last updated
.
Post not yet marked as solved
0 Replies
281 Views
Has anyone had success with RoomPlan to scan an entire home? We use floor plan scanning technology for our real estate business and RoomPlan is great as it has instant results but we need the entire home with a staircase for total square footage purposes. Thanks in advance, Luke
Posted Last updated
.
Post not yet marked as solved
0 Replies
315 Views
Hey guys, I hope you are all doing well! I am really stuck on a problem and I need help here. I am new to Swift but I need to use Swift to complete a project. I am trying to use this code https://github.com/jmousseau/RoomObjectReplicatorDemo/blob/main/RoomObjectReplicatorDemo/ViewController.swift with the RoomObjectReplicator library https://github.com/jmousseau/RoomObjectReplicator. However, the issue is that my app is currently using SwiftUI and not UIKit. Furthermore, I have ContentView and ARViewContainer. How can I implement the code but use ContentView and ARViewContainer along with SwiftUI? Thanks in advance!
Posted Last updated
.
Post not yet marked as solved
0 Replies
355 Views
A case occured where the Structure Builder is crashing with EXC_BAD_ACCESS and the error cannot be handled without the app crashing. I have two minimalistic models, one even reduced to the minimum of the "coreModel" itself. (See attachment) Each model alone in the StructureBuilder works fine. Using both causes the crash. Has anyone found a way to handle this error without the app crashing? override func viewDidLoad() { super.viewDidLoad() let capturedRooms: [CapturedRoom] = [ loadCapturedRoom(fileName: "appleModel1"), loadCapturedRoom(fileName: "appleModel2") ] buildStructure(capturedRooms) } func buildStructure(_ capturedRooms: [CapturedRoom]) { let structureBuilder = StructureBuilder(options: []) Task { print("----- START BUILDING STRUCTURE -----") do { let capturedStructure = try await structureBuilder.capturedStructure(from: capturedRooms) } catch { print("----- FAILED BUILDING STRUCTURE -----") } // Crashing with: EXC_BAD_ACCESS // This part will never be reached print("----- FINISH BUILDING STRUCTURE -----") } } func loadCapturedRoom(fileName: String) -> CapturedRoom { do { guard let jsonFileURL = Bundle.main.url(forResource: fileName, withExtension: "json") else { fatalError("JSON file not found.") } let data = try Data(contentsOf: jsonFileURL) return try JSONDecoder().decode(CapturedRoom.self, from: data) } catch { fatalError(error.localizedDescription) } } appleModel1.json appleModel2.json
Posted Last updated
.
Post not yet marked as solved
1 Replies
246 Views
when i start roomplan scanner,there reminder "Move device to start",and other reminder, now i use roomplan in china, i want use custom remider in my apps, how should i do?
Posted
by HestaWL.
Last updated
.
Post not yet marked as solved
0 Replies
345 Views
I am currently working on a project involving the merging of multiple scans into a single structure using Room plan json file. I am facing an issue and would greatly appreciate your assistance in resolving it. The problem I am encountering is as follows: "Cannot process multiFloorPlan: Invalid room location in structure" Captured room json file paths: [https://mimesisfbs.s3.ap-south-1.amazonaws.com/project_3dfile_json/2088a003-5712-4e9f-91eb-601b145ca98e-project_3dfile_json_file.json) [https://mimesisfbs.s3.ap-south-1.amazonaws.com/project_3dfile_json/10ccd0d9-7843-41bd-a021-a57781231059-project_3dfile_json_file.json) We are using same code as in example. [https://developer.apple.com/documentation/RoomPlan/merging_multiple_scans_into_a_single_structure)
Posted Last updated
.
Post not yet marked as solved
0 Replies
279 Views
Hi all. Can anyone show the code for multiroom on swiftUI? And another question, is it possible to change the parameters (dimensions) of walls, doors, windows in an already scanned room by entering real dimensions from a laser tape measure? Because the scanned object has dimensional errors of up to 3 cm. Thanks.
Posted
by aleyyyyy1.
Last updated
.
Post not yet marked as solved
1 Replies
337 Views
I'm looking for the full sample code from WWDC23 session https://developer.apple.com/videos/play/wwdc2023/10192
Posted Last updated
.