Make a FreeCAD high school version

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: Make a FreeCAD high school version

Post by triplus »

In schools teachers usually familiarize themselves with the subject, before passing on the knowledge. I doubt that teachers are prepared to familiarize pupils with some software, that doesn't look or behave like the standard version of that software. As what would be the point?
chrisb
Veteran
Posts: 54281
Joined: Tue Mar 17, 2015 9:14 am

Re: Make a FreeCAD high school version

Post by chrisb »

The digital natives can usually very well concentrate on the essentials. And usually there are some of them highly motivated and eager to learn. Let them play with functions you haven't explained.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
freedman
Veteran
Posts: 3472
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: Make a FreeCAD high school version

Post by freedman »

The only way I can respond to trying to use the full version; If you ask new users how long it takes to understand the concept of FreeCAD or CAD in general they will say it's so complicated they give up before they fully understand. I have no proof of this, just a feeling. I hope by minimizing the number of icons/tools available the user will focus on certain things only. Once they get good with those tools they can move to a higher level where more tools will be available.
I don't think this will take a lot of energy, please watch and give input, this is new territory.
Thanks
chrisb
Veteran
Posts: 54281
Joined: Tue Mar 17, 2015 9:14 am

Re: Make a FreeCAD high school version

Post by chrisb »

I agree if you give them a version for self education. Then it takes some time to find a way through the overwhelming number of possibilities. The users here in the forum have managed this, but we don't know how many failed.

So why not give it a try? This topic is about a specialized version and not about how to teach FreeCAD, so I will stop ranting, (although I still think that showing a way through the jungle is completely different from finding a way through by oneself).
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: Make a FreeCAD high school version

Post by Kunda1 »

There may be a custom way to configure FreeCAD using pre-set user.cfg files. We can choose what workbenches, toolbars, and layouts would work for different student demographics. I was even thinking of a way to have a script that will scan the .cfg file and then based on what has been added will utilize the Addon Manager to automagically prompt the user permission to download pre-selected addons/workbenches. So for example: say we want to include @triplus's handy addons like TabBar and IconThemes. In addition lets say we want to use @pablogil's darker-blue theme we'd just have to add:

We'd add these xml tags

Code: Select all

<!-- Set some generic settings -->
      <FCParamGroup Name="Preferences">
        <FCParamGroup Name="General">
          <!--show the splash screen -->
          <FCBool Name="ShowSplasher" Value="1"/>
          <!--tweak the toolbar size based on the demographic --> 
          <FCInt Name="ToolbarIconSize" Value="48"/>
        </FCParamGroup>

<!-- Add IconThemes addon, pre-choose specific theme -->

      <FCParamGroup Name="IconThemes">
        <FCText Name="Registered">FC_COIL_LAS_RCC.rcc</FCText>
        <FCText Name="Theme">FC_COIL_LAS_demo</FCText>
      </FCParamGroup>

<!-- Add TabBar with prechosen workbenches to show/hide-->
<!-- TabBar is known as TabBar and as 'Tabs' in the user.cfg file --> 

      <FCParamGroup Name="TabBar">
        <!-- Make the tabs show both Icons and Text -->
        <FCText Name="Style">IconText</FCText>
        <FCText Name="Orientation">Auto</FCText>
        <FCText Name="PrefButton">Off</FCText>
        <!-- Choose what workbenches to feature in the TabBar -->
        <FCText Name="Enabled">ArchWorkbench,BIMWorkbench,DraftWorkbench,FemWorkbench,ImageWorkbench,InspectionWorkbench,MeshWorkbench,,OpenSCADWorkbench,PartDesignWorkbench,PartWorkbench,PathWorkbench,PointsWorkbench,RaytracingWorkbench,,SketcherWorkbench,SpreadsheetWorkbench,StartWorkbench,SurfaceWorkbench,TechDrawWorkbench</FCText>
        <FCText Name="Partially"/>
        <!-- Choose what workbenches NOT to feature in the TabBar -->
        <FCText Name="Unchecked">CompleteWorkbench,DrawingWorkbench,ReverseEngineeringWorkbench,WebWorkbench,TestWorkbench,RobotWorkbench,NoneWorkbench</FCText>
      </FCParamGroup>

  <!---TabBar has several places in the .cfg file that it needs to be added to --> 
      <FCParamGroup Name="Workbench">
        <FCParamGroup Name="Global">
          <FCParamGroup Name="Toolbar">
            <FCParamGroup Name="Tabs">
              <FCText Name="Name">Tabs</FCText>
              <FCBool Name="Active" Value="1"/>
            </FCParamGroup>
          </FCParamGroup>
        </FCParamGroup>
      </FCParamGroup>     

  <!---Yet another place TabBar is requrires in the .cfg file --> 
      <FCParamGroup Name="MainWindow">
          <FCBool Name="Tabs" Value="1"/>
        </FCParamGroup>
 
<!-- Lets use @pablogil's Darker-blue Stylesheet -->

        <FCParamGroup Name="Editor">
          <FCText Name="StyleSheet">Path/to/Gui/Stylesheets/Darker-blue.qss</FCText>
        </FCParamGroup>
      
Edit: Next step is when FreeCAD starts it will scan the .cfg see what workbenches are available and which need to be fetched remotely. The ones that need remote access will be shown in a dialogue requiring user's consent to fetch. Once the downloads are complete, the user will be prompted to re-start FreeCAD. Pressing OK will automagically do so and re-invoke FreeCAD. When FC opens in theory all the changes should have been implemented.

Edit2: reference threads:
https://forum.freecadweb.org/viewtopic.php?f=8&t=40151
gist for documentation
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
freedman
Veteran
Posts: 3472
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: Make a FreeCAD high school version

Post by freedman »

There may be a custom way to configure FreeCAD using pre-set user.cfg files.
That's kind of the direction I was thinking about. FreeCad can be installed on multiple computers and the config file will determine the class level. Here are a couple pics (PD and Sketch), I hid most all the tool bars (including the workbench) and then made some custom minimal toolbars. I expect to make more changes but these are certainly some of the basic icons required. All this is stored in the config files. FreeCAD opens fine to this kind of workbench-less screen.

To start a list of things that I would like to see. All for discussion.
1) Always when entering Sketcher set the view to the Preferences-> New document camera view (one of the 3D views). Always sketching in 3D.
2) Rotate the camera view. This one might take some effort. To sketch in 3D we need to view and rotate in 3D. Could a rotate be done in 90 deg. increments with 2 arrows (rotate right, rotate up), not sure.
3) Add some way to hide the preferences panel.

prompt the user permission to download pre-selected addons/workbenches.
I would expect the classroom computers to be limited internet access.
Attachments
Sketch.JPG
Sketch.JPG (26.31 KiB) Viewed 1146 times
Part Design .JPG
Part Design .JPG (22.29 KiB) Viewed 1176 times
freedman
Veteran
Posts: 3472
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: Make a FreeCAD high school version

Post by freedman »

I don't want to waste any ones time so I think I will work on a macro that does what I want visually. I will presume that Preferences can be hidden and hopefully the contents of the macro can be incorporated or ran in the background. Things got so complicated for visuals, I will need to gather a few tools so I can show my concept.

I wanted to rotate in 3D (around the current screen vertical axis) and found this macro to give me some ideas.
https://www.freecadweb.org/wiki/index.p ... w_Rotation

I'll get back. Thanks
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: Make a FreeCAD high school version

Post by triplus »

Looking at the images, why shouldn't a student be able to insert a point, line or an arc in Sketcher? Why would that make it a better experience?

P.S. Another placeholder for commands you can explore and use is the command panel module.
freedman
Veteran
Posts: 3472
Joined: Thu Mar 22, 2018 3:02 am
Location: Washington State, USA

Re: Make a FreeCAD high school version

Post by freedman »

why shouldn't a student be able to insert a point, line or an arc in Sketcher?
I wasn't completely sure but my thought was this; use tools that create closed surfaces and automatic constraints (on edges). If you want an arc then you need to draw a circle and trim it, if you want a line then you need to draw a box and trim it, points don't do things to solids so they are not included. What this does is remove the burdon of constraints. The trim tool is very powerful and removes many steps in constraining. I might be able to remove all the constraint icons, not sure.
For FreeCAD-100 there would be maybe 10 models to draw, no scale or dimensions or constraints, just make your model look like the practice image, something like that.
P.S. Another placeholder for commands you can explore and use is the command panel module.
First time I have seen this, I will check it out.
chrisb
Veteran
Posts: 54281
Joined: Tue Mar 17, 2015 9:14 am

Re: Make a FreeCAD high school version

Post by chrisb »

This approach seems to me intellectually rather demanding, so it is not only about modeling but also about structured thinking. If you allow only creation of rectangles, you would need at least coincidences to get sloped lines.

I would rather allow the polyline tool, as it can create vertical and horizontal lines (by autoconstraints), sloped lines, and tangent or rectangular arcs.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Post Reply