It is currently March 29th, 2023, 10:50 am

Thread for help with the Shape meter

Get help with creating, editing & fixing problems with skins
death.crafter
Rainmeter Sage
Posts: 1398
Joined: April 24th, 2021, 8:13 pm

Re: Thread for help with the Shape meter

CodeCode wrote: June 12th, 2021, 3:10 am Hello,

New puzzle.
Using InvertMeasure to have yellow progress from right to left.
I only changed one of them.

Code: Select all

``````
[ProgBarRTB]
Meter=Shape
X=50
Y=10
Shape=Path TopBar | Strokewidth 2 | Stroke Color #Main#,100 | Fill Color #Goth#,200
TopBar=265, 80 | LineTo (265-265*[MeasureGPUTemp]/100),(80+45*[MeasureGPUTemp]/100) | LineTo (275-270*[MeasureGPUTemp]/100),(132+17*[MeasureGPUTemp]/100) | LineTo 275, 132 | ClosePath 1
DynamicVariables=1

``````
from the Realm of Death
death.crafter
Rainmeter Sage
Posts: 1398
Joined: April 24th, 2021, 8:13 pm

Re: Thread for help with the Shape meter

death.crafter wrote: June 12th, 2021, 4:20 am

Code: Select all

``````
[ProgBarRTB]
Meter=Shape
X=50
Y=10
Shape=Path TopBar | Strokewidth 2 | Stroke Color #Main#,100 | Fill Color #Goth#,200
TopBar=265, 80 | LineTo (265-265*[MeasureGPUTemp]/100),(80+45*[MeasureGPUTemp]/100) | LineTo (275-270*[MeasureGPUTemp]/100),(132+17*[MeasureGPUTemp]/100) | LineTo 275, 132 | ClosePath 1
DynamicVariables=1
``````
I guess I should have explained:

When going from right to left you have to change the maths accordingly.

For example You have to move from the right most point to the left most point and not the other way around. For that you have to subtract the difference form max value.

Same goes for the vertical too. If the right most point have a greater Y coordinate you have to subtract the difference and vice-versa.
from the Realm of Death
CodeCode
Posts: 1155
Joined: September 7th, 2020, 2:24 pm
Location: QLD, Australia

Re: Thread for help with the Shape meter

Yep. I figured out some of it. But I am like geometry dyslexic, so it kinda does my head in. But I slapped in what you provided, and it works perfectly.

So I have not gotten as far with the other bars, as the one you exemplified to me with. So if I am not slapping in numerous further questions, it is because I am just slow to get these figured out.

Thank you for being patient with me, as I grind through basic math and geometry. My degree is in Social Science, and math was not a big part of that.
ƈǟռ'ȶ ʄɨӼ ɨȶ ɨʄ ɨȶ ǟɨռ'ȶ ɮʀօӄɛ - ʊռʟɛֆֆ ɨȶ ɨֆ ɨռ ƈօɖɛ.
Yincognito
Rainmeter Sage
Posts: 4917
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Thread for help with the Shape meter

CodeCode wrote: June 12th, 2021, 5:51 am Yep. I figured out some of it. But I am like geometry dyslexic, so it kinda does my head in. But I slapped in what you provided, and it works perfectly.

So I have not gotten as far with the other bars, as the one you exemplified to me with. So if I am not slapping in numerous further questions, it is because I am just slow to get these figured out.

Thank you for being patient with me, as I grind through basic math and geometry. My degree is in Social Science, and math was not a big part of that.
Well, if math is a weak point for you, why drawing shapes in the first place? Using shapes REQUIRE some more or less reasonable math understanding. You could use images and get away with it, since graphical design seems to be one of your strong points.

Other than that, if you REALLY want to understand things, the key is doing them without looking at the answer. Sure, the answer is useful to verify yourself and all, but the only way to get things right all the time is to try to "discover" / "experiment" things until they become your second nature, so to speak.

That being said, trying to "convert" a large number of bars all at once is going to be difficult even for a math savvy user. I suppose that for some bars the angle, size or orientation are similar, so why not taking just one shape of such group, figure it out, then copy paste the code for the rest of the shapes in that similar group and just modify the coordinates?

EDIT: I'll try to design an arbitrary quadrilater (shape made of 4 edges) progress bar, based on input coordinates and parameters, which will output the complete code for the desired shape, so you can use it to paste things in your code without bothering with the math, if you need to. Stay tuned.
Profiles: Rainmeter ProfileDeviantArt Profile ◆ Suites: MYiniMeter ◆ Skins: Earth
CodeCode
Posts: 1155
Joined: September 7th, 2020, 2:24 pm
Location: QLD, Australia

Re: Thread for help with the Shape meter

OK. Here is the working copy.
The two lower right bars will, I think, be top process, and either download (scaled so its not always empty), or something... happy to get suggestion/s.
NeoGothica_2.3.xx.rmskin
Untitled.jpg
You do not have the required permissions to view the files attached to this post.
ƈǟռ'ȶ ʄɨӼ ɨȶ ɨʄ ɨȶ ǟɨռ'ȶ ɮʀօӄɛ - ʊռʟɛֆֆ ɨȶ ɨֆ ɨռ ƈօɖɛ.
death.crafter
Rainmeter Sage
Posts: 1398
Joined: April 24th, 2021, 8:13 pm

Re: Thread for help with the Shape meter

CodeCode wrote: June 12th, 2021, 1:02 pm OK. Here is the working copy.
The two lower right bars will, I think, be top process, and either download (scaled so its not always empty), or something... happy to get suggestion/s.

NeoGothica_2.3.xx.rmskin
Untitled.jpg
Everything looks good but I am not so sure about the buttons panel at the top and bottom. They don't fit in well and their perspective is outwards when the rest of your skin's perspective is inwards. Rather than that good job. And in the end it's your skin, so you decide what's better.
from the Realm of Death
CodeCode
Posts: 1155
Joined: September 7th, 2020, 2:24 pm
Location: QLD, Australia

Re: Thread for help with the Shape meter

Ok. Everything is working great. But there is a crazy simple thing I am missing when using these shapes to show free and used respectively. The used should be yellow and free is green.
So, I am stuck on this and I dont know why.

Code: Select all

``````[MeasureFreeDiskSpace]
Measure=FreeDiskSpace
Drive=C:
UpdateDivider=60
DynamicVariables=1

[MeasureUsedDiskSpace]
Measure=FreeDiskSpace
Drive=C:
InvertMeasure=1
UpdateDivider=60
DynamicVariables=1
``````
These wont compute correctly - the bars go waaay off, and it is just bogging my mind.
What do I need to have with these for the shapes to correspond correctly?
ƈǟռ'ȶ ʄɨӼ ɨȶ ɨʄ ɨȶ ǟɨռ'ȶ ɮʀօӄɛ - ʊռʟɛֆֆ ɨȶ ɨֆ ɨռ ƈօɖɛ.
Yincognito
Rainmeter Sage
Posts: 4917
Joined: February 27th, 2015, 2:38 pm
Location: Terra Yincognita

Re: Thread for help with the Shape meter

Since CodeCode already finished his work, here's a fully automated quadrilater progress bar for the less math savvy, adjustable to any:
- coordinates
- direction
- perspective
- visuals
It not only builds the shape without any effort from the user (other than providing the coordinates via input or scroll on their boxes, and direction via scroll on the shape itself), but it provides the code for it too.

Code: Select all

``````[Variables]
PMAX=100

X1=20
Y1=0
X2=0
Y2=70
X3=275
Y3=45
X4=270
Y4=30

FCF=0,0,0,128
FCP=0,255,0,128
SCF=255,255,255,255
SCP=255,0,0,255
SWF=2
SWP=2

Code=""

[Rainmeter]
Update=25
DynamicWindowSize=1
AccurateText=1

---Measures---

[X1Input]
Measure=Plugin
Plugin=InputText
X=([X1Data:X])
Y=([X1Data:Y])
W=([X1Data:W])
H=([X1Data:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue="#X1#"
Command1=[!SetVariable X1 "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[X2Input]
Measure=Plugin
Plugin=InputText
X=([X2Data:X])
Y=([X2Data:Y])
W=([X2Data:W])
H=([X2Data:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue="#X2#"
Command1=[!SetVariable X2 "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[X3Input]
Measure=Plugin
Plugin=InputText
X=([X3Data:X])
Y=([X3Data:Y])
W=([X3Data:W])
H=([X3Data:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue="#X3#"
Command1=[!SetVariable X3 "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[X4Input]
Measure=Plugin
Plugin=InputText
X=([X4Data:X])
Y=([X4Data:Y])
W=([X4Data:W])
H=([X4Data:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue="#X4#"
Command1=[!SetVariable X4 "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[Y1Input]
Measure=Plugin
Plugin=InputText
X=([Y1Data:X])
Y=([Y1Data:Y])
W=([Y1Data:W])
H=([Y1Data:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue="#Y1#"
Command1=[!SetVariable Y1 "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[Y2Input]
Measure=Plugin
Plugin=InputText
X=([Y2Data:X])
Y=([Y2Data:Y])
W=([Y2Data:W])
H=([Y2Data:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue="#Y2#"
Command1=[!SetVariable Y2 "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[Y3Input]
Measure=Plugin
Plugin=InputText
X=([Y3Data:X])
Y=([Y3Data:Y])
W=([Y3Data:W])
H=([Y3Data:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue="#Y3#"
Command1=[!SetVariable Y3 "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[Y4Input]
Measure=Plugin
Plugin=InputText
X=([Y4Data:X])
Y=([Y4Data:Y])
W=([Y4Data:W])
H=([Y4Data:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue="#Y4#"
Command1=[!SetVariable Y4 "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[DX2]
Measure=Calc
Formula=(#X3#-#X2#)
UpdateDivider=-1
DynamicVariables=1

[DY2]
Measure=Calc
Formula=(#Y3#-#Y2#)
UpdateDivider=-1
DynamicVariables=1

[DX1]
Measure=Calc
Formula=(#X4#-#X1#)
UpdateDivider=-1
DynamicVariables=1

[DY1]
Measure=Calc
Formula=(#Y4#-#Y1#)
UpdateDivider=-1
DynamicVariables=1

[Code]
Measure=String
String=Meter=Shape[\x000d][\x000a]Shape=Path FramePath | Fill Color #FCF# | StrokeWidth #SWF# | StrokeColor #SCF#[\x000d][\x000a]FramePath=#X1#,#Y1# | LineTo #X2#,#Y2# | LineTo #X3#,#Y3# | LineTo #X4#,#Y4# | ClosePath 1[\x000d][\x000a]Shape2=Path ProgressPath | Fill Color #FCP# | StrokeWidth #SWP# | StrokeColor #SCP#[\x000d][\x000a]ProgressPath=#X1#,#Y1# | LineTo #X2#,#Y2# | LineTo (#X2#+[DX2]*[*Progress*]/#PMAX#),(#Y2#+[DY2]*[*Progress*]/#PMAX#) | LineTo (#X1#+[DX1]*[*Progress*]/#PMAX#),(#Y1#+[DY1]*[*Progress*]/#PMAX#) | ClosePath 1[\x000d][\x000a]DynamicVariables=1
UpdateDivider=-1
RegExpSubstitute=1
Substitute="(?:\+\-|\-\+)":"-"
DynamicVariables=1

[CodeInput]
Measure=Plugin
Plugin=InputText
X=([CodeData:X])
Y=([CodeData:Y])
W=([CodeData:W])
H=([CodeData:H])
SolidColor=0,0,0,255
FontFace=Tahoma
FontColor=255,255,255,255
FontSize=10
DefaultValue=[Code]
Command1=[!SetVariable Code "\$UserInput\$"]
Command2=[!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[Progress]
Measure=Loop
StartValue=0
EndValue=#PMAX#
Increment=1
DynamicVariables=1

---Styles---

[TextStyle]
FontFace=Tahoma
FontColor=255,255,255,255
FontEffectColor=0,0,0,255
FontWeight=700
FontSize=10
SolidColor=0,0,0,0
AntiAlias=1

---Meters---

[X1]
Meter=String
MeterStyle=TextStyle
Text="#CURRENTSECTION#:"
UpdateDivider=-1

[X1Data]
Meter=String
MeterStyle=TextStyle
X=0R
Y=0r
W=34
SolidColor=0,0,0,255
Text="#X1#"
UpdateDivider=-1
MouseScrollUpAction=[!SetVariable X1 (Clamp((#X1#+1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable X1 (Clamp((#X1#-1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
LeftMouseUpAction=[!CommandMeasure X1Input "ExecuteBatch All"]
DynamicVariables=1

[Y1]
Meter=String
MeterStyle=TextStyle
X=5R
Y=0r
Text="#CURRENTSECTION#:"
UpdateDivider=-1

[Y1Data]
Meter=String
MeterStyle=TextStyle
X=0R
Y=0r
W=34
SolidColor=0,0,0,255
Text="#Y1#"
UpdateDivider=-1
MouseScrollUpAction=[!SetVariable Y1 (Clamp((#Y1#+1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable Y1 (Clamp((#Y1#-1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
LeftMouseUpAction=[!CommandMeasure Y1Input "ExecuteBatch All"]
DynamicVariables=1

[X2]
Meter=String
MeterStyle=TextStyle
X=30R
Y=0r
Text="#CURRENTSECTION#:"
UpdateDivider=-1

[X2Data]
Meter=String
MeterStyle=TextStyle
X=0R
Y=0r
W=34
SolidColor=0,0,0,255
Text="#X2#"
UpdateDivider=-1
MouseScrollUpAction=[!SetVariable X2 (Clamp((#X2#+1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable X2 (Clamp((#X2#-1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
LeftMouseUpAction=[!CommandMeasure X2Input "ExecuteBatch All"]
DynamicVariables=1

[Y2]
Meter=String
MeterStyle=TextStyle
X=5R
Y=0r
Text="#CURRENTSECTION#:"
UpdateDivider=-1

[Y2Data]
Meter=String
MeterStyle=TextStyle
X=0R
Y=0r
W=34
SolidColor=0,0,0,255
Text="#Y2#"
UpdateDivider=-1
MouseScrollUpAction=[!SetVariable Y2 (Clamp((#Y2#+1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable Y2 (Clamp((#Y2#-1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
LeftMouseUpAction=[!CommandMeasure Y2Input "ExecuteBatch All"]
DynamicVariables=1

[X3]
Meter=String
MeterStyle=TextStyle
X=30R
Y=0r
Text="#CURRENTSECTION#:"
UpdateDivider=-1

[X3Data]
Meter=String
MeterStyle=TextStyle
X=0R
Y=0r
W=34
SolidColor=0,0,0,255
Text="#X3#"
UpdateDivider=-1
MouseScrollUpAction=[!SetVariable X3 (Clamp((#X3#+1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable X3 (Clamp((#X3#-1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
LeftMouseUpAction=[!CommandMeasure X3Input "ExecuteBatch All"]
DynamicVariables=1

[Y3]
Meter=String
MeterStyle=TextStyle
X=5R
Y=0r
Text="#CURRENTSECTION#:"
UpdateDivider=-1

[Y3Data]
Meter=String
MeterStyle=TextStyle
X=0R
Y=0r
W=34
SolidColor=0,0,0,255
Text="#Y3#"
UpdateDivider=-1
MouseScrollUpAction=[!SetVariable Y3 (Clamp((#Y3#+1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable Y3 (Clamp((#Y3#-1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
LeftMouseUpAction=[!CommandMeasure Y3Input "ExecuteBatch All"]
DynamicVariables=1

[X4]
Meter=String
MeterStyle=TextStyle
X=30R
Y=0r
Text="#CURRENTSECTION#:"
UpdateDivider=-1

[X4Data]
Meter=String
MeterStyle=TextStyle
X=0R
Y=0r
W=34
SolidColor=0,0,0,255
Text="#X4#"
UpdateDivider=-1
MouseScrollUpAction=[!SetVariable X4 (Clamp((#X4#+1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable X4 (Clamp((#X4#-1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
LeftMouseUpAction=[!CommandMeasure X4Input "ExecuteBatch All"]
DynamicVariables=1

[Y4]
Meter=String
MeterStyle=TextStyle
X=5R
Y=0r
Text="#CURRENTSECTION#:"
UpdateDivider=-1

[Y4Data]
Meter=String
MeterStyle=TextStyle
X=0R
Y=0r
W=34
SolidColor=0,0,0,255
Text="#Y4#"
UpdateDivider=-1
MouseScrollUpAction=[!SetVariable Y4 (Clamp((#Y4#+1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable Y4 (Clamp((#Y4#-1),0,9999))][!UpdateMeasure *][!UpdateMeter *][!Redraw]
LeftMouseUpAction=[!CommandMeasure Y4Input "ExecuteBatch All"]
DynamicVariables=1

[CodeData]
Meter=String
MeterStyle=TextStyle
Y=10R
SolidColor=0,0,0,255
MeasureName=Code
Text="%1"
UpdateDivider=-1
LeftMouseUpAction=[!CommandMeasure CodeInput "ExecuteBatch All"]
DynamicVariables=1

[Trapezoid]
Meter=Shape
X=(Max((Max(#SWF#,#SWP#)/2),25))r
Y=(Max((Max(#SWF#,#SWP#)/2),25))R
Shape=Path FramePath | Fill Color #FCF# | StrokeWidth #SWF# | StrokeColor #SCF#
FramePath=#X1#,#Y1# | LineTo #X2#,#Y2# | LineTo #X3#,#Y3# | LineTo #X4#,#Y4# | ClosePath 1
Shape2=Path ProgressPath | Fill Color #FCP# | StrokeWidth #SWP# | StrokeColor #SCP#
ProgressPath=#X1#,#Y1# | LineTo #X2#,#Y2# | LineTo (#X2#+(#X3#-#X2#)*[Progress]/#PMAX#),(#Y2#+(#Y3#-#Y2#)*[Progress]/#PMAX#) | LineTo (#X1#+(#X4#-#X1#)*[Progress]/#PMAX#),(#Y1#+(#Y4#-#Y1#)*[Progress]/#PMAX#) | ClosePath 1
LeftMouseUpAction=[!TogglePauseMeasure Progress][!UpdateMeter *][!Redraw]
MouseScrollUpAction=[!SetVariable X1 #X4#][!SetVariable Y1 #Y4#][!SetVariable X2 #X1#][!SetVariable Y2 #Y1#][!SetVariable X3 #X2#][!SetVariable Y3 #Y2#][!SetVariable X4 #X3#][!SetVariable Y4 #Y3#][!CommandMeasure Progress "Reset"][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetVariable X1 #X2#][!SetVariable Y1 #Y2#][!SetVariable X2 #X3#][!SetVariable Y2 #Y3#][!SetVariable X3 #X4#][!SetVariable Y3 #Y4#][!SetVariable X4 #X1#][!SetVariable Y4 #Y1#][!CommandMeasure Progress "Reset"][!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1

[X1Y1]
Meter=String
MeterStyle=TextStyle
X=([Trapezoid:X]+#X1#)
Y=([Trapezoid:Y]+#Y1#)
StringAlign=CenterCenter
Text="(#X1#,#Y1#)"
DynamicVariables=1

[X2Y2]
Meter=String
MeterStyle=TextStyle
X=([Trapezoid:X]+#X2#)
Y=([Trapezoid:Y]+#Y2#)
StringAlign=CenterCenter
Text="(#X2#,#Y2#)"
DynamicVariables=1

[X3Y3]
Meter=String
MeterStyle=TextStyle
X=([Trapezoid:X]+#X3#)
Y=([Trapezoid:Y]+#Y3#)
StringAlign=CenterCenter
Text="(#X3#,#Y3#)"
DynamicVariables=1

[X4Y4]
Meter=String
MeterStyle=TextStyle
X=([Trapezoid:X]+#X4#)
Y=([Trapezoid:Y]+#Y4#)
StringAlign=CenterCenter
Text="(#X4#,#Y4#)"
DynamicVariables=1
``````
(this is death.crafter's shape here, but having the progress bar advancing from the top edge instead, via a simple scroll on the shape)

All you need to do after playing with the parameters is to copy paste the code by clicking on its box, or, alternatively, either copying or writing the #Code# variable from the log or to another .INI or .INC file.
You do not have the required permissions to view the files attached to this post.
Profiles: Rainmeter ProfileDeviantArt Profile ◆ Suites: MYiniMeter ◆ Skins: Earth
death.crafter
Rainmeter Sage
Posts: 1398
Joined: April 24th, 2021, 8:13 pm

Re: Thread for help with the Shape meter

CodeCode wrote: June 12th, 2021, 3:31 pm Ok. Everything is working great. But there is a crazy simple thing I am missing when using these shapes to show free and used respectively. The used should be yellow and free is green.
So, I am stuck on this and I dont know why.

Code: Select all

``````[MeasureFreeDiskSpace]
Measure=FreeDiskSpace
Drive=C:
UpdateDivider=60
DynamicVariables=1

[MeasureUsedDiskSpace]
Measure=FreeDiskSpace
Drive=C:
InvertMeasure=1
UpdateDivider=60
DynamicVariables=1
``````
These wont compute correctly - the bars go waaay off, and it is just bogging my mind.
What do I need to have with these for the shapes to correspond correctly?
This time complying to yincognito I won't be handing over the solution since it won't help you in the long run. Tho I will tell you how to.

Take an existing bar. Right to left or left to right. If the bar is Right to left(which most probably is the case) make two dynamic shapes in the same section, one going from right to left that is the used disk space. And one from left to right, showing the free disk space. And vice versa for left to right. The bars should look like this:
Screenshot 2021-06-12 221451.png
And the measure should be like this:

Code: Select all

``````[MeasureFreeDiskSpaceRaw]
Measure=FreeDiskSpace
Drive=C:
UpdateDivider=60

[MeasureUsedDiskSpaceRaw]
Measure=FreeDiskSpace
Drive=C:
InvertMeasure=1
UpdateDivider=60

[MeasureTotalDiskSpace]
Measure=FreeDiskSpace
Drive=C:
UpdateDivider=-1
Total=1

[MeasureFreeDiskSpace]
Measure=Calc
Formula=(MeasureFreeDiskSpaceRaw/MeasureTotalDiskSpace)*100
UpdateDivider=60

[MeasureUsedDiskSpace]
Measure=Calc
Formula=(MeasureUsedDiskSpaceRaw/MeasureTotalDiskSpace)*100
UpdateDivider=60
``````
You do not have the required permissions to view the files attached to this post.
from the Realm of Death
death.crafter
Rainmeter Sage
Posts: 1398
Joined: April 24th, 2021, 8:13 pm

Re: Thread for help with the Shape meter

Yincognito wrote: June 12th, 2021, 4:33 pm Since CodeCode already finished his work, here's a fully automated quadrilater progress bar for the less math savvy, adjustable to any:
- coordinates
- direction
- perspective
- visuals
It not only builds the shape without any effort from the user (other than providing the coordinates via input or scroll on their boxes, and direction via scroll on the shape itself), but it provides the code for it too.
A work of art indeed. But an attached skin would have been nice. Unless ofc you want to follow the path of Arch Linux and let the user build it on their own.
from the Realm of Death