โหมด

คลาสสาธารณะ โหมด

Sceneform Scene รักษากราฟฉากซึ่งเป็นองค์กรแบบลําดับชั้นของฉาก แต่ละฉากอาจมีโหนดย่อย 0 โหนดขึ้นไป และแต่ละโหนดอาจไม่มีโหนดย่อย 0 โหนดขึ้นไป

นอกจากนี้ โหมดนี้ยังเสนอการทดสอบ Hit ซึ่งเป็นวิธีในการตรวจหาโหนดที่แตะโดย MotionEvent หรือ Ray

ชั้นเรียนที่ฝังไว้

ที่ปรับปรุงใหม่ Scene.OnPeekTouchListener คําจํากัดความของอินเทอร์เฟซสําหรับการเรียกกลับสําหรับเรียกใช้เมื่อมีการส่งเหตุการณ์การสัมผัสไปยังฉาก
ที่ปรับปรุงใหม่ Scene.OnTouchListener คําจํากัดความของอินเทอร์เฟซสําหรับการเรียกกลับสําหรับเรียกใช้เมื่อมีการส่งเหตุการณ์การสัมผัสไปยังฉาก
ที่ปรับปรุงใหม่ Scene.OnUpdateListener ระบบจะเรียกใช้คําจํากัดความของอินเทอร์เฟซสําหรับการเรียกกลับ 1 ครั้งต่อเฟรมทันทีก่อนที่ฉากจะอัปเดต

ช่อง

Environmental Static สุดท้าย EnvironmentalHdrParameters DEFAULT_HDR_PARAMETRIC

ผู้ผลิตก่อสร้าง

Scene(มุมมอง SceneView)
สร้างฉากที่มีบริบทที่ระบุ

วิธีการสาธารณะ

เป็นโมฆะ
addOnPeekTouchListener(Scene.OnPeekTouchListener onPeekTouchListener)
เพิ่ม Listener ที่จะเรียกก่อน Scene.OnTouchListener
เป็นโมฆะ
addOnUpdateListener(Scene.OnUpdateListener onUpdateListener)
เพิ่ม Listener ที่ระบบจะเรียกใช้ 1 ครั้งต่อเฟรมทันทีก่อนที่ฉากจะอัปเดต
กล้อง
getCamera()
ติดตั้งกล้องที่ใช้แสดงผลฉาก
โหนด
getSunlight()
รับโหนดแสงแดดที่เป็นค่าเริ่มต้น
มุมมอง
getView()
แสดงผล SceneView ที่ใช้สร้างฉาก
HitTestResult
hitTest(MotionEvent MotionEvent)
ทดสอบเพื่อดูว่าเหตุการณ์การเคลื่อนไหวกําลังแตะโหนดใดๆ ภายในฉากหรือไม่ โดยอิงตามการทดสอบ Hit เรย์ซึ่งมีต้นทางเป็นตําแหน่งหน้าจอของเหตุการณ์การเคลื่อนไหว และจะแสดงผล HitTestResult ที่มีโหนดที่อยู่ใกล้กับหน้าจอมากที่สุด
HitTestResult
hitTest(Ray ray)
ทดสอบเพื่อดูว่ามีการฉายแสงไปยังจุดใดจุดหนึ่งภายในฉากหรือไม่ และจะแสดงผล HitTestResult ที่มีโหนดซึ่งใกล้กับจุดกําเนิดของรัศมีดังกล่าวมากที่สุด
ArrayList<HitTestResult>
hitTestAll(Ray ray)
ทดสอบเพื่อดูว่ามีการแผ่รังสีหรือไม่ที่โหนดใดๆ ภายในฉากและแสดงผลรายการ HitTestResults ที่มีโหนดทั้งหมด Hit ที่จัดเรียงตามระยะทาง
ArrayList<HitTestResult>
hitTestAll(MotionEvent MotionEvent)
ทดสอบเพื่อดูว่าเหตุการณ์การเคลื่อนไหวกําลังแตะโหนดใดๆ ภายในฉากหรือไม่ และส่งกลับรายการ HitTestResults ที่มีโหนดทั้งหมด Hit ที่จัดเรียงตามระยะทาง
เป็นโมฆะ
onAddChild(Node ย่อย)
เป็นโมฆะ
onRemoveChild(Node ย่อย)
โหนด
overlapTest(โหนด โหนด)
ทดสอบเพื่อดูว่ารูปร่างการชนของโหนดที่ระบุซ้อนทับรูปร่างการชนของโหนดอื่นๆ ในฉากโดยใช้ getCollisionShape() หรือไม่
ArrayList<Node>
overlapTestAll(โหนด โหนด)
ทดสอบเพื่อดูว่าโหนดทับซ้อนกับโหนดอื่นๆ ภายในฉากด้วย getCollisionShape() หรือไม่
เป็นโมฆะ
removeOnPeekTouchListener(Scene.OnPeekTouchListener onPeekTouchListener)
นํา Listener ที่จะเรียกใช้ก่อนที่เรียกใช้ Scene.OnTouchListener ออก
เป็นโมฆะ
removeOnUpdateListener(Scene.OnUpdateListener onUpdateListener)
นํา Listener ที่ระบบจะเรียกใช้ 1 ครั้งต่อเฟรมโดยทันทีก่อนที่ฉากจะอัปเดต
เป็นโมฆะ
setLightEstimated(สีการแก้สี, จํานวนพิกเซลสะสมแบบลอย)
ตั้งค่าแสงโดยประมาณเพื่อปรับแต่งแสงและความสว่างของฉาก
เป็นโมฆะ
setOnTouchListener(Scene.OnTouchListener ใน TouchListener)
ลงทะเบียนโค้ดเรียกกลับที่จะเรียกใช้เมื่อแตะฉาก

วิธีการที่รับค่ามา

ช่อง

ภาพนิ่ง สุดท้าย EnvironmentalHdrParameters DEFAULT_HDR_PARAMETRIC

ผู้ผลิตก่อสร้าง

สาธารณะ Scene (SceneView)

สร้างฉากที่มีบริบทที่ระบุ

พารามิเตอร์
ดู

วิธีการสาธารณะ

สาธารณะ null addOnPeekTouchListener (Scene.OnPeekTouchListener ใน PeekTouchListener)

เพิ่ม Listener ที่จะเรียกก่อน Scene.OnTouchListener ระบบจะเรียกใช้ แม้จะมีการใช้ท่าทางสัมผัส ทําให้คุณสังเกตเห็นเหตุการณ์การเคลื่อนไหวทั้งหมด ที่ส่งไปยังฉากได้ การเรียกเช่นนี้แม้ว่าการสัมผัสจะไม่ได้อยู่เหนือโหนด แต่ getNode() จะเป็น Null ระบบจะเรียกใช้ Listener ตามลําดับที่เพิ่ม

พารามิเตอร์
onPeekTouchListener ผู้ฟังแบบดูข้อมูลย่อที่จะเพิ่ม

สาธารณะ null addOnUpdateListener (Scene.OnUpdateListener onUpdateListener)

เพิ่ม Listener ที่ระบบจะเรียกใช้ 1 ครั้งต่อเฟรมทันทีก่อนที่ฉากจะอัปเดต ระบบจะเรียกใช้ Listener ตามลําดับที่เพิ่ม

พารามิเตอร์
onUpdateListener Listener การอัปเดตเพื่อเพิ่ม

สาธารณะ กล้อง getCamera ()

ติดตั้งกล้องที่ใช้แสดงผลฉาก กล้องเป็นประเภทของโหนด

การคืนสินค้า
  • กล้องที่ใช้แสดงภาพ

สาธารณะ โหนด getSunlight ()

รับโหนดแสงแดดที่เป็นค่าเริ่มต้น

การคืนสินค้า
  • โหนดแสงอาทิตย์ที่ใช้เพื่อส่องแสงให้ฉาก

สาธารณะ SceneView getView ()

แสดงผล SceneView ที่ใช้สร้างฉาก

สาธารณะ HitTestResult hitTest (MotionEvent MotionEvent)

ทดสอบเพื่อดูว่าเหตุการณ์การเคลื่อนไหวกําลังแตะโหนดใดๆ ภายในฉากหรือไม่ โดยอิงตามการทดสอบ Hit เรย์ซึ่งมีต้นทางเป็นตําแหน่งหน้าจอของเหตุการณ์การเคลื่อนไหว และจะแสดงผล HitTestResult ที่มีโหนดที่อยู่ใกล้กับหน้าจอมากที่สุด

พารามิเตอร์
เหตุการณ์การเคลื่อนไหว เหตุการณ์การเคลื่อนไหวที่จะใช้สําหรับการทดสอบ
การคืนสินค้า
  • ผลลัพธ์จะมีโหนดแรกที่ได้รับผลกระทบจากเหตุการณ์การเคลื่อนไหว (อาจเป็นค่าว่าง) และข้อมูลเกี่ยวกับตําแหน่งที่เหตุการณ์การเคลื่อนไหวเข้าสู่โหนดในช่องว่าง

สาธารณะ HitTestResult hitTest (Ray ray)

ทดสอบเพื่อดูว่ามีการฉายแสงไปยังจุดใดจุดหนึ่งภายในฉากหรือไม่ และจะแสดงผล HitTestResult ที่มีโหนดซึ่งใกล้กับจุดกําเนิดของรัศมีดังกล่าวมากที่สุด

พารามิเตอร์
Ray ทดสอบเพื่อใช้ทดสอบ
การคืนสินค้า
  • ผลลัพธ์จะมีโหนดแรกที่โดนเรย์ทําให้สําเร็จ (อาจเป็นค่าว่าง) และข้อมูลเกี่ยวกับตําแหน่งที่เรเดียนใช้โหนดในช่องว่างโลก
ดูเพิ่มเติม

สาธารณะ ArrayList<HitTestResult> hitTestAll (Ray ray)

ทดสอบเพื่อดูว่ามีการแผ่รังสีหรือไม่ที่โหนดใดๆ ภายในฉากและแสดงผลรายการ HitTestResults ที่มีโหนดทั้งหมด Hit ที่จัดเรียงตามระยะทาง

พารามิเตอร์
Ray แสงแดดที่ใช้ทดสอบ
การคืนสินค้า
  • ป้อนข้อมูลด้วย HitTestResult สําหรับแต่ละโหนดที่มีการจัดเรียงตามระยะทาง ไม่มีข้อมูลหากไม่มี Hit
ดูเพิ่มเติม

สาธารณะ ArrayList<HitTestResult> hitTestAll (MotionEvent MotionEvent)

ทดสอบเพื่อดูว่าเหตุการณ์การเคลื่อนไหวกําลังแตะโหนดใดๆ ภายในฉากหรือไม่ และส่งกลับรายการ HitTestResults ที่มีโหนดทั้งหมด Hit ที่จัดเรียงตามระยะทาง

พารามิเตอร์
เหตุการณ์การเคลื่อนไหว เหตุการณ์การเคลื่อนไหวที่จะใช้สําหรับการทดสอบ
การคืนสินค้า
  • ป้อนข้อมูลด้วย HitTestResult สําหรับแต่ละโหนดที่มีการจัดเรียงตามระยะทาง ไม่มีข้อมูลหากไม่มี Hit

สาธารณะ null onAddChild (โหนด)

พารามิเตอร์
เด็ก

สาธารณะ null onRemoveChild (โหนด))

พารามิเตอร์
เด็ก

สาธารณะ โหนด overlapTest (โหนดโหนด)

ทดสอบเพื่อดูว่ารูปร่างการชนของโหนดที่ระบุซ้อนทับรูปร่างการชนของโหนดอื่นๆ ในฉากโดยใช้ getCollisionShape() หรือไม่ โหนดที่ใช้สําหรับการทดสอบไม่จําเป็นต้องทํางานอยู่

พารามิเตอร์
โหนด โหนดที่จะใช้ในการทดสอบ
การคืนสินค้า
  • โหนดที่ทับซ้อนกัน หากโหนดไม่ซ้อนทับโหนดทดสอบ จะเป็น Null หากมีโหนดหลายรายการซ้อนทับโหนดทดสอบ นี่อาจเป็นโหนดใดก็ได้
ดูเพิ่มเติม

สาธารณะ ArrayList<Node> overlapTestAll (โหนดโหนด)

ทดสอบเพื่อดูว่าโหนดทับซ้อนกับโหนดอื่นๆ ภายในฉากด้วย getCollisionShape() หรือไม่ โหนดที่ใช้สําหรับการทดสอบไม่จําเป็นต้องมีการใช้งาน

พารามิเตอร์
โหนด โหนดที่จะใช้ในการทดสอบ
การคืนสินค้า
  • รายการโหนดทั้งหมดที่ซ้อนทับโหนดทดสอบ หากโหนดไม่ซ้อนทับโหนดทดสอบ รายการจะว่างเปล่า
ดูเพิ่มเติม

สาธารณะ null removeOnPeekTouchListener (Scene.OnPeekTouchListener ใน PeekTouchListener)

นํา Listener ที่จะเรียกใช้ก่อนที่เรียกใช้ Scene.OnTouchListener ออก เราจะเรียกใช้คอมโพเนนต์นี้แม้จะมีการใช้ท่าทางสัมผัสซึ่งทําให้สังเกตเห็นเหตุการณ์การเคลื่อนไหวทั้งหมดที่ส่งไปยังฉากได้ การเรียกเช่นนี้แม้ว่าการสัมผัสจะไม่ได้อยู่เหนือโหนด แต่ getNode() จะเป็น Null

พารามิเตอร์
onPeekTouchListener ผู้ฟังที่มีการสัมผัสไว้ตอนนี้เพื่อลบ

สาธารณะ null removeOnUpdateListener (Scene.OnUpdateListener onUpdateListener)

นํา Listener ที่ระบบจะเรียกใช้ 1 ครั้งต่อเฟรมโดยทันทีก่อนที่ฉากจะอัปเดต

พารามิเตอร์
onUpdateListener Listener การอัปเดตเพื่อนําออก

สาธารณะ null setLightEstimated (Color colorที่ใช้งานได้, Flo pixelIntensity)

ตั้งค่าแสงโดยประมาณเพื่อปรับแต่งแสงและความสว่างของฉาก หลอดไฟที่แสดงผลจะใช้ค่าเหล่านี้ผสมกัน รวมถึงสีและความเข้มของแสง ค่าของการแก้สีสีขาวและความหนาแน่นของพิกเซลเป็น 1 หมายความว่าไม่มีการเปลี่ยนแปลงการตั้งค่าแสง

โหมดนี้จะใช้โหมด AR Sceneform ภายในเพื่อปรับแสงตามค่าจาก ARCore โหมด AR จะเรียกใช้โหมดนี้โดยอัตโนมัติ ซึ่งอาจลบล้างการตั้งค่าอื่นๆ ได้ ในกรณีส่วนใหญ่ คุณไม่ควรเรียกใช้คํานี้อย่างชัดแจ้ง

พารามิเตอร์
การแก้สี ปรับเปลี่ยนสีการจัดแสงของฉาก
ความเข้มข้นของพิกเซล ปรับความเข้มของแสงในฉาก

สาธารณะ null setOnTouchListener (Scene.OnTouchListener ใน ListenerListener)

ลงทะเบียนโค้ดเรียกกลับที่จะเรียกใช้เมื่อแตะฉาก ระบบจะเรียกใช้โค้ดเรียกกลับหลังจากส่งเหตุการณ์การแตะไปยังโหนดในฉากหากไม่มีโหนดที่ใช้เหตุการณ์ การดําเนินการนี้เรียกว่า"แม้จะแตะไม่ได้"เหนือโหนด แต่ getNode() จะเป็น Null

พารามิเตอร์
ใน onListenerListener ตัวจับแบบแตะเพื่อแนบ