Disable num images, make -1 mean random.

pull/12/head
Pedro Cuenca 1 year ago
parent ee244e5147
commit 01b64111ab

@ -112,26 +112,28 @@ struct ControlsView: View {
} label: {
Label("Step count", systemImage: "square.3.layers.3d.down.left").foregroundColor(.secondary)
}
Divider()
DisclosureGroup() {
CompactSlider(value: $generation.numImages, in: 0...10, step: 1) {
Text("Number of Images")
Spacer()
Text("\(Int(generation.numImages))")
}.padding(.leading, 10)
} label: {
Label("Number of images", systemImage: "photo.stack").foregroundColor(.secondary)
}
Divider()
// DisclosureGroup() {
// CompactSlider(value: $generation.numImages, in: 0...10, step: 1) {
// Text("Number of Images")
// Spacer()
// Text("\(Int(generation.numImages))")
// }.padding(.leading, 10)
// } label: {
// Label("Number of images", systemImage: "photo.stack").foregroundColor(.secondary)
// }
// Divider()
DisclosureGroup() {
CompactSlider(value: $generation.seed, in: 0...1000, step: 1) {
Text("Random seed")
let sliderLabel = generation.seed < 0 ? "Random Seed" : "Seed"
CompactSlider(value: $generation.seed, in: -1...1000, step: 1) {
Text(sliderLabel)
Spacer()
Text("\(Int(generation.seed))")
}.padding(.leading, 10)
} label: {
Label("Random Seed", systemImage: "leaf").foregroundColor(.secondary)
Label("Seed", systemImage: "leaf").foregroundColor(.secondary)
}
}
}

@ -41,13 +41,13 @@ class GenerationContext: ObservableObject {
// FIXME: Double to support the slider component
@Published var steps = 25.0
@Published var numImages = 1.0
@Published var seed = 0.0
@Published var seed = -1.0
private var progressSubscriber: Cancellable?
func generate() async -> (CGImage, TimeInterval)? {
guard let pipeline = pipeline else { return nil }
let seed = self.seed > 0 ? UInt32(self.seed) : nil
let seed = self.seed >= 0 ? UInt32(self.seed) : nil
return try? pipeline.generate(prompt: positivePrompt, scheduler: scheduler, numInferenceSteps: Int(steps), seed: seed)
}
}

Loading…
Cancel
Save