Final tweaks for deploy

virtual screen size does matter,and curv is a little more memory hungry
than the other functions
This commit is contained in:
Kurt Hutten
2021-11-30 15:15:54 +11:00
parent 9797405834
commit 172e19165f
7 changed files with 15 additions and 99 deletions

View File

@@ -126,6 +126,7 @@ export async function storeAssetAndReturnUrl({
try { try {
buffer = await readFile(fullPath, { encoding: 'base64' }) buffer = await readFile(fullPath, { encoding: 'base64' })
await runCommand(`rm -R /tmp/${tempFile}`)
} catch (e) { } catch (e) {
console.log('read file error', e) console.log('read file error', e)
const response = { const response = {

View File

@@ -32,7 +32,7 @@ export const runCurv = async ({
const customizerPath = `/tmp/${tempFile}/customizer.param` const customizerPath = `/tmp/${tempFile}/customizer.param`
const command = [ const command = [
'xvfb-run --auto-servernum --server-args "-screen 0 1024x768x24" curv', 'xvfb-run --auto-servernum --server-args "-screen 0 3840x2160x24" curv',
`-o ${imPath}`, `-o ${imPath}`,
`-O xsize=${x}`, `-O xsize=${x}`,
`-O ysize=${y}`, `-O ysize=${y}`,

View File

@@ -117,6 +117,7 @@ functions:
method: post method: post
cors: true cors: true
timeout: 25 timeout: 25
memorySize: 3008
curvstl: curvstl:
image: image:
name: curvimage name: curvimage

View File

@@ -230,7 +230,7 @@ export function PureIdeViewer({
<Controls <Controls
onDragStart={() => setIsDragging(true)} onDragStart={() => setIsDragging(true)}
onInit={onInit} onInit={onInit}
onCameraChange={() => {onCameraChange(); setIsDragging(false)}} onCameraChange={(...args) => {onCameraChange(...args); setIsDragging(false)}}
controlsRef={controlsRef} controlsRef={controlsRef}
camera={camera} camera={camera}
/> />

View File

@@ -5,7 +5,7 @@ import type { Camera } from 'src/helpers/hooks/useIdeState'
export const lambdaBaseURL = export const lambdaBaseURL =
process.env.CAD_LAMBDA_BASE_URL || process.env.CAD_LAMBDA_BASE_URL ||
'https://oxt2p7ddgj.execute-api.us-east-1.amazonaws.com/prod' 'https://2inlbple1b.execute-api.us-east-1.amazonaws.com/prod2'
export const stlToGeometry = (url) => export const stlToGeometry = (url) =>
new Promise((resolve, reject) => { new Promise((resolve, reject) => {

View File

@@ -1,90 +0,0 @@
import { CadhubParams } from 'src/components/Customizer/customizerConverter'
interface CurvParamsBase {
caption: string
name: string
group: string
initial: number | string | number[]
type: 'string' | 'number'
}
interface CurvNumberParam extends CurvParamsBase {
type: 'number'
initial: number | number[]
max?: number
min?: number
step?: number
options?: { name: string; value: number }[]
}
interface CurvStringParam extends CurvParamsBase {
type: 'string'
initial: string
maxLength?: number
options?: { name: string; value: string }[]
}
export type CurvParams =
| CurvNumberParam
| CurvStringParam
export function openScadToCadhubParams(
input: CurvParams[]
): CadhubParams[] {
return input
.map((param): CadhubParams => {
const common: { caption: string; name: string } = {
caption: param.caption,
name: param.name,
}
switch (param.type) {
case 'string':
if (!Array.isArray(param?.options)) {
return {
type: 'string',
input: 'default-string',
...common,
initial: param.initial,
maxLength: param.maxLength,
}
} else {
return {
type: 'string',
input: 'choice-string',
...common,
initial: param.initial,
options: param.options,
}
}
case 'number':
if (
!Array.isArray(param?.options) &&
!Array.isArray(param?.initial)
) {
return {
type: 'number',
input: 'default-number',
...common,
initial: param.initial,
min: param.min,
max: param.max,
step: param.step,
}
} else if (
Array.isArray(param?.options) &&
!Array.isArray(param?.initial)
) {
return {
type: 'number',
input: 'choice-number',
...common,
initial: param.initial,
options: param.options,
}
} // TODO else vector
break
default:
return
}
})
.filter((a) => a)
}

View File

@@ -1,6 +1,10 @@
// sphere box let
N = 5;
(smooth 1).union [ C = red;
box, Twists = 6;
sphere in
] box [1,1,N]
>> colour C
>> twist (Twists*90*deg/N)
>> rotate {angle: 90*deg, axis: Y_axis}
>> bend{}