Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Point and Click improvements #2035

Open
31 of 47 tasks
jessfraz opened this issue Apr 7, 2024 · 5 comments
Open
31 of 47 tasks

Point and Click improvements #2035

jessfraz opened this issue Apr 7, 2024 · 5 comments
Labels
bug Something isn't working enhancement New feature or request feature Feature Requests

Comments

@jessfraz
Copy link
Contributor

jessfraz commented Apr 7, 2024

const part001 = sketch001
  |> extrude(10, %)

so there is a more familiar feature tree like feel to the generated code

  • code pane should be called "KCL Code" because we need to make people more aware of "KCL" otherwise hard to google for docs, just need people to know the name of the code
  • angled line constraints arent actually updating the sketch, they create just this weird ghost line, appear to be broken #2462
  • more consistent naming file versus project on the homepage, should be "new project"
  • dialog box after hitting new project to name it #3266
  • default for extrude should be something other than 5+7, something more normal (maybe 3.14 or anything), its obvious you can do math in there, so we don't need to show that, keep whatever was done the last time, so if you extruded 10 the last time 10 should show up there
  • extrude click and point has bugs when you click the sketch again
  • extrude click and point should show the variable name for the selected extrude in the command bar, should highlight the whole profile for the sketch
  • extrude should be callable without somthing selected, then you select a sketch after
  • in dialog box a little x, clicking off it works but just in case the user doesn't realize

after v1

  • after v1, different view modes, shading with and without edges, a wireframe mode, solidworks for examples
  • after v1, if the project is in inches but you want a specific number in the code to be mm, if you suffix it with mm it will auto do the conversion for you
  • after v1, macros as keybindings like create a whole sketch in a keybinding
  • after v1, more traditional feature tree feeling side bar
  • after v1, snapping to a mid-point, or click a midpoint
@jessfraz jessfraz added this to the v1 Modeling App Launch milestone Apr 7, 2024
@jessfraz jessfraz added bug Something isn't working enhancement New feature or request feature Feature Requests labels Apr 7, 2024
@franknoirot
Copy link
Collaborator

franknoirot commented Apr 8, 2024

Lots of great stuff in here; just wanted to start with highlighting this:

if you want to add many lengths at once, you can enter a length mode where you can click length, then click a line add a length, click a line add a length, click a line add a length, just for ease of use

This will be a Dimension tool like those found in other CAD apps, so you can set lengths or angles depending on your clicking sequence. As I help capture these as issues, I'll make sure there is one that gets the full tool feature idea.

@alteous
Copy link
Contributor

alteous commented Apr 9, 2024

Export is inconsistent works once but then not working the second time

Do we know what the problem is here exactly? I haven't been able to reproduce this.

@jessfraz
Copy link
Contributor Author

jessfraz commented Apr 9, 2024

It’s not a backend thing it’s a ui thing where it doesn’t even prompt where to save

@Irev-Dev
Copy link
Collaborator

on close, the line is like a draft line and should look like all the other lines

This was a design choice, the close segment is different from every other segment, the user can't define it, it just goes directly back to the profile start so it should look different. It doesn't look like a draft lines, the draft lines are dashed. We can change the way the close looks but I think it probably look different still.

hover over button when disabled like extrude, would be good to know the reason sometimes the reason shows up a bit delayed like 3 seconds

We're using the browser title attribute, which yeah is kinda slow, we can use a popover or similar.

on click of object (closed sketch, not sketch mode), you should be able to extrude, it does not allow for this, you have to select within the code, we should make sure everything always works with the code panel closed

This issue was introduced in the sketch on face. I need to touch base with @mlfarrell about this we talked about it, for example here the solid2d id is supposed to be the path id, so it's already in the artifact map, but the id that get's returned by the engine is not in the client's artifact map which is why this doesn't work. I'll get my ducks lined up and make sure it's not something dumb in the FE.

inconsistencies with not being able to draw lines in sketch mode

Is this a catch all for bugs in sketch mode? it seems a little vague.

Click / hover over a line should highlight the line and the code line, this used to work and now is not

I realise this was listed in, #1664 but I hadn't created an engine issue, it seems that highlight_set_entity doesn't work in edit_mode (and we have to use that for sketch on face). but click does work for edges and faces (but not segments as you pointing out.)

hovering over a math equation in the code will show the fully executed outcome of the equation

const myVar = my + math / expression
const yo = someFunction(my + math / expression)

is this for variable declarations only (because we can get that by looking at program memory) but if it's for any binaryExpression that's not store anywhere so we'll probably have to make a little ast with just that expression, and execute it with the previous program memory to get it it's value, but even than I'm not sure

const myVar = my + math / someExpressiveEngineCall()

Do we try and re-execute an expensive callExpression that needs the engine (queries big model for it's volume)?
We could do start by only doing it for binaryExpressions that don't contain callExpressions, but this might be confusing for users.

Moving existing lines seems to be broken, its injecting lines versus say taking a corner and making a rectangle better, and the close line just moves the whole sketch versus allowing to drag the corner out, never mind it is subtle so maybe we add a keybinding for one of these as a setting, but very cool the injecting of new lines versus having to cut a line

I'll probably need a demo. I'm not able to replicate it.

after adding a length constraint to a line you are exited out of sketch mode, you should still be in sketch mode

Yeah adding constraints that add a variable by default has this issue, I'm guessing that's what you hit. I want to squash a bunch of sketch mode quirks once I get through the overlay stuff.

after hitting horizontal on a line, that line is no longer selected so you have to click it again in order to constrain the length

I think we lost this in the xstate migration, it's subtle enough to have gotten missed in the migration, but very convenient when you are trying to move quickly.

multi-select lines with control to add constraints

It's shift for selecting segments atm, and cmd or putting the cursors yourself in the editor. ctrl might be a better default since potentially we can use it for both. And maybe this is something that's non-negotiable like user's can't chang it back to shift in settings because shift is already such a hard convention for selecting a block of text in the editor.

catia, top to bottom rectangle to select, selects ONLY items fully within the box, like if half a line is in it it wont select it. But if you go bottom to top, it will select lines that are only half within the box

probably makes sense to do this when it add "select multiple segments to move at once" but that's probably the biggest use case, but having said that trying to move multiple segments at once gets gnarly with constraints, like if there's a single absolute-coords constrained segment in your selections then you probably can move your selections, and less the way the tool works is even if you selected constrained segments, it will just move the segments that it's able to. but that seems kinda jank to me.

snap to other lines in the sketches, like it needs to feel like it snaps

snapping will be a pretty big task, keen to get into it, I kinda want to have construction geometry in sketch groups before I get underway so that I'm covering that case when working on it.

Snaps will be a big task because for each kind of snap there will need to be specific ast mod for that. But it will be huge unlock since it will allow users to constrain segments without having to select a segment and click a specific constraint button.

angled line constraints arent actually updating the sketch, they create just this weird ghost line, appear to be broken

I'll have to play with this.

extrude click and point has bugs when you click the sketch again
extrude click and point should show the variable name for the selected extrude in the command bar, should highlight the whole profile for the sketch
extrude should be callable without somthing selected, then you select a sketch after

I struggle to follow the above sorry.

@jessfraz
Copy link
Contributor Author

Sorry i can show you the ones I worded poorly!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request feature Feature Requests
Projects
None yet
Development

No branches or pull requests

4 participants