HKVisionPrism
Prescription data for eye alignment.
Declaration
class HKVisionPrismOverview
To include prism information in a glasses prescription, start by creating an HKVisionPrism object.
// The correction for eye alignment.
let prismQuantity = HKQuantity(unit: .prismDiopter(), doubleValue: +0.25)
let angle = HKQuantity(unit: .degreeAngle(), doubleValue: 15.0)
let prism = HKVisionPrism(amount: prismQuantity,
angle: angle,
eye: .right)Then, pass this value to the HKGlassesLensSpecification’s initializer.
// The prescription for the right eye.
let glassesRightEye = HKGlassesLensSpecification(sphere: sphere,
cylinder: cylinder,
axis: axis,
addPower: addPower,
vertexDistance: vertexDistance,
prism: prism,
farPupillaryDistance: farDistance,
nearPupillaryDistance: nearDistance)Finally, create the glasses prescription and save it to the HealthKit store.
// The glasses prescription.
let prescription = HKGlassesPrescription(rightEyeSpecification: glassesRightEye,
leftEyeSpecification: glassesLeftEye,
dateIssued: dateIssued,
expirationDate: expirationDate,
device: HKDevice.local(),
metadata: nil)
// Save the sample to the HealthKit store.
do {
try await store.save(prescription)
} catch {
// Handle the error here.
fatalError("*** An error occurred while saving the prescription sample to the HealthKit store \(error.localizedDescription) ***")
}