Post not yet marked as solved
Hi
Is this possible to have RoomCaptureSession and ARSession together, as we need feature points
Post not yet marked as solved
Let's say a 10-feet wall. Would RoomPlan return 11, 10.1, or 10.01 feet? Thanks a lot.
Post not yet marked as solved
I am in need to create a 2D floor plan with the dimensions mentioned, from the generated 3D result of RoomPlan. Is there a way to create it in a little easy-to-understand manner? Or will it require manual elaborate coding?
Post not yet marked as solved
Does anyone know how to display color when scanning and on the mini model based on the type of object detected? Apple demonstrated this feature in their article about RoomPlan but the documentation doesn't show this option.
here is a video of the feature:
https://mlr.cdn-apple.com/video/roomplan_fig4_results_580x800_8d63f073b8.mp4
Post not yet marked as solved
During scanning, I got this error and scanning process immediately quips without any output. I wonder what this error means and what caused it. Thanks.
Post not yet marked as solved
Hi Apple community,
Currently developing an iOS application using Room Plan API, I'd like to remove real world objects detected with Room Plan to my ARView.
I already tried to use the following code but it deletes only the anchor entities (customText, UI instructions...) attached to the Anchor :
arView.scene.removeAnchor(anchor)
My aim is to delete real world object content to my ARView like in this example :
(I have an error when uploading files like png, jpg or pdf so there is a link)
https://ibb.co/yR8CRVy
Is there any way to do that using Room Plan API and ARKit ?
Thanks in advance,
Goat
Post not yet marked as solved
So, I have been working with RoomPlan in an application that is sensitive to the model's orientation. However, sometimes—even if the number representing the orientation I am capturing seems right—the final orientation is quite wrong.
Now, I have also noticed that sometimes (and I am not sure when, so it is kind of hard to reproduce) the representation of the room is shuffled when RoomCaptureView().captureSession.stop() is called... is RoomPlan reorganizing everything at the end? If so, is there any way to prevent this from happening?
Thanks!
Post not yet marked as solved
I need to modify the scanned room before export (e.g. add some additional objects + add some metadata )
From the RoomBulder doc:
"Your app can then inspect or modify this data before exporting the scanned room to a USDZ file"
How can I modify the scanned room? The members seem to be get only. Any Example ?
Regards,
Frank
Post not yet marked as solved
Hi, i want to create an app that uses RoomPlan API to scan the room and display the scanned room model into the reality kit. How can i do this?
Post not yet marked as solved
Here is the current code I am using for it. When scanning my room, it is not identifying any door. And there are 2. Am I missing anything?
import UIKit
import RoomPlan
import ARKit
import RealityKit
class RoomPlanViewController: UIViewController, RoomCaptureViewDelegate, UIViewControllerTransitioningDelegate {
@IBOutlet weak var doneButton: UIButton!
@IBOutlet weak var exportButton: UIButton!
@IBOutlet weak var statusLabel: UILabel!
var roomCaptureView: RoomCaptureView!
let customDismissal = CustomSlideDownDismissal()
var finalResults: CapturedRoom?
override func viewDidLoad() {
super.viewDidLoad()
roomCaptureView = RoomCaptureView(frame: view.bounds)
roomCaptureView.delegate = self
view.insertSubview(roomCaptureView, at: 0)
exportButton.isHidden = true
statusLabel.isHidden = true
self.transitioningDelegate = self
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
roomCaptureView?.captureSession.run(configuration: RoomCaptureSession.Configuration())
}
@IBAction func Back(_ sender: Any) {
roomCaptureView?.captureSession.stop()
self.dismiss(animated: true, completion: nil)
}
@IBAction func doneButtonPressed(_ sender: UIButton) {
roomCaptureView?.captureSession.stop()
doneButton.isHidden = true
exportButton.isHidden = false
}
func captureView(didPresent: CapturedRoom, error: Error?) {
statusLabel.isHidden = false
statusLabel.text = error == nil ? "The scan was successfully completed" :
"An error occurred during the scan: \(String(describing: error))"
finalResults = didPresent
print("DOOR HERE")
print(finalResults?.doors.count as Any)
exportButton.isHidden = false
statusLabel.isHidden = false
}
@IBAction func exportButtonPressed(_ sender: UIButton) {
let filename = "Room.usdz"
let destinationURL = FileManager.default.temporaryDirectory.appending(path: filename)
do {
try finalResults?.export(to: destinationURL)
let activityController = UIActivityViewController(activityItems: [destinationURL], applicationActivities: nil)
}
Post not yet marked as solved
I can't post a video I don't think. But in the screen shots, I'm sightly making a circle with the phone and the green lines will disappear and then reappear. Those green lines are drawn via .addChildNode().
We're using RoomPlan to detect cabinets(.storage), and then we outline the cabinets with SCNNodes. We have other methods to capture cabinets that don't use RoomPlan. And the lines for those cabinets do not wink in and out.
Perhaps there is a bug with visibility culling?
We're pretty dang sure the nodes are not disappearing because we are calling .hide() anywhere.
Perhaps object detection from RoomPlan running in the background is interfering?
Post not yet marked as solved
Can I Keep the floor of the scanned CapturedRoom model with RoomPlan?. Every time I scan a space, the presented preview includes the floor but when I try to manipulate the 'finalResults' (CapturedRoom) I can't find the floor component. There is a way where I can keep it or rebuild it?. Thanks!
Post not yet marked as solved
The two links on this page for RoomPlan sample code from WWDC 2023 are broken. Any idea when we can expect these to be posted?
https://developer.apple.com/documentation/roomplan/providingcustommodelsforcapturedroomsandstructureexports
and
https://developer.apple.com/documentation/roomplan/mergingmultiplescansintoasinglestructure
Thanks!
Post not yet marked as solved
Hello,
I am using RoomPlan in iOS17 with SwiftUI the program crashes as soon as a new surface is detected. It seems to come from CaptureView. Anyone else experiencing the same issue?
Thanks in advance
Post not yet marked as solved
I'm trying to test the RoomPlan exporter with ModelProvider.
I ran the sample code, and tried loading from the existing room plan samples of Merging Multiple Scans.
Then after I open the exported USDZ output, none of the objects are being substituted with the objects inside RoomPlanCatalog.bundle. I have debugged and checked that the Catalog is loaded correctly.
What is the specification of providing a catalog for RoomPlan's ModelProvider? As it's not clear what we should do regarding that from the documentation. Shouldn't there be a generic 3D mesh provided for objects such as Chair, Table, and Shelf, but I couldn't see any of them loaded. Although chair could be easily detected during the scan process, as I observed the session delegates.
Tried configuring the captureSession.arSession with SceneReconstruction configuration, but there's no difference. It looks like the issue is only on the exporting process.
Post not yet marked as solved
Our app is available in the App Store and it's working well on ios16 devices.
A few days ago, we noticed in Organizer weird bugs coming from ios17, with the only hint "NO_CRASH_STACK".
After installing ios17 on an iPhone, we were able to reproduce the crash directly at launch, but only when the app is downloaded from the appstore (no crash when the app is installed with Xcode 15 beta)
"type": "EXC_CRASH",
"signal": "SIGABRT"
},
"termination": {
"code": 4,
"flags": 518,
"namespace": "DYLD",
"indicator": "Symbol missing",
"details": [
"(terminated at launch; ignore backtrace)"
],
"reasons": [
"Symbol not found: _$s8RoomPlan0A14CaptureSessionCACycfc",
"Referenced from: <XXXX----XXXXXXX> /Volumes/VOLUME//.app/",
"Expected in: <XXXX--**-XXXXX-XXXXXXX> /System/Library/Frameworks/RoomPlan.framework/RoomPlan"
]
Does Anybody else encounter this issue?
What should we do to solve this?
thanks!
Post not yet marked as solved
So, I have been playing with the new version of RoomPlan (it is pretty awesome!). However, I found this bug... or, I think it is a bug:
When I get the JSON, I get the following field, for each room:
{
"rooms": [
{
"story": 1,
"floors": [
...
],
"coreModel": "xPNhmdphlnynwusRL92NgUYKht...
...
...
This is kind of annoting, as this is quite a big field. With the coreModel, the file is 828kB. When I remove it, it is 267kB.
Post not yet marked as solved
So, I am using CapturedStructure to scan multiple spaces in a property. I intended to use the story field available on the Surface structures within the floors field.
However, they all have a story == 0; and when I enumerate(), it seems incorrect as well.
This is happening to me at least after printing the CapturedStructure into a JSON.
This also happens to rooms's floors: The section states one story, but the floors all say 0
Post not yet marked as solved
im try load ARWorldMap roomCaptureView?.captureSession.arSession.run(arWorldTrackingConfig, options: []), but when i load ARWorldMap, RoomPlan not work, the screen goes black, and nothing is displayed,
Does anyone know the cause and solution?
Post not yet marked as solved
i want to test MultiRoom, but i can't make it, can someone give me solution or example app