This commit is contained in:
caranicas 2022-09-14 13:07:27 -04:00
parent a1ad1147e6
commit 4a35059711

View File

@ -13,41 +13,52 @@ export default function MakeButton() {
const addNewImage = useImageQueue((state) => state.addNewImage); const addNewImage = useImageQueue((state) => state.addNewImage);
const makeImages = () => { const makeImages = () => {
// the request that we have built
const req = builtRequest(); const req = builtRequest();
// the actual number of request we will make
let requests = []; let requests = [];
// the number of images we will make
let { num_outputs } = req; let { num_outputs } = req;
// if making fewer images than the parallel count
// then it is only 1 request
if( parallelCount > num_outputs ) { if( parallelCount > num_outputs ) {
requests.push(num_outputs); requests.push(num_outputs);
} }
else { else {
// while we have at least 1 image to make
while (num_outputs >= 1) { while (num_outputs >= 1) {
// subtract the parallel count from the number of images to make
num_outputs -= parallelCount; num_outputs -= parallelCount;
// if we are still 0 or greater we can make the full parallel count
if(num_outputs <= 0) { if(num_outputs <= 0) {
requests.push(parallelCount) requests.push(parallelCount)
} }
// otherwise we can only make the remaining images
else { else {
requests.push(Math.abs(num_outputs)) requests.push(Math.abs(num_outputs))
} }
} }
} }
console.log('requests', requests); // make the requests
requests.forEach((num, index) => { requests.forEach((num, index) => {
console.log('num', num); // get the seed we want to use
let seed = req.seed; let seed = req.seed;
if(index !== 0) { if(index !== 0) {
// we want to use a random seed for subsequent requests
seed = useRandomSeed(); seed = useRandomSeed();
} }
// add the request to the queue
// debugger;
addNewImage(uuidv4(), { addNewImage(uuidv4(), {
...req, ...req,
// updated the number of images to make
num_outputs: num, num_outputs: num,
// update the seed
seed: seed seed: seed
}) })
}); });