AppDimens.Net.Power
3.6.0
dotnet add package AppDimens.Net.Power --version 3.6.0
NuGet\Install-Package AppDimens.Net.Power -Version 3.6.0
<PackageReference Include="AppDimens.Net.Power" Version="3.6.0" />
<PackageVersion Include="AppDimens.Net.Power" Version="3.6.0" />
<PackageReference Include="AppDimens.Net.Power" />
paket add AppDimens.Net.Power --version 3.6.0
#r "nuget: AppDimens.Net.Power, 3.6.0"
#:package AppDimens.Net.Power@3.6.0
#addin nuget:?package=AppDimens.Net.Power&version=3.6.0
#tool nuget:?package=AppDimens.Net.Power&version=3.6.0
<div align="center">
⚡ AppDimens.Net.Power
Power-law scaling (PWSdp) — aggressive growth for large screens with tunable sensitivity k.
Part of the AppDimens for .NET family · requires AppDimens.Net (core).
</div>
🎯 What is it?
The Power strategy applies a power-law curve to screen-relative scaling: dimensions grow faster than linearly as screens get bigger. Use it when large displays should get dramatically more space — dashboards, media grids, map canvases.
A custom sensitivity factor (k) lets you flatten or steepen the curve without changing code paths.
📦 Installation
dotnet add package AppDimens.Net.Power
Depends on AppDimens.Net (pulled automatically). Attach a MAUI window first or pass an explicit
IAppDimensContext.
🚀 Quick start
using AppDimens.Net.Power;
float tile = 12.PWSdp(); // power-scaled by smallest-width
float hero = 18.PWSdpa(); // + aspect-ratio adjustment
float panel = 16.PWWdp(ctx); // width-axis lane
// custom sensitivity — steeper growth on tablets
float bold = 12.PWSdpCustom(DpQualifier.SmallWidth, Inverter.Default,
ignoreMultiWindows: false, applyAspectRatio: false, k: 1.4f);
🧭 API
| Extension | Result |
|---|---|
v.PWSdp(ctx) · v.PWSdpa(ctx) |
smallest-width lane (± aspect ratio) |
v.PWHdp(ctx) · v.PWWdp(ctx) |
height / width axis |
…i variants (PWSdpi…) |
ignore multi-window |
v.PWSdpPx(ctx) … |
pixel result |
v.PWSdpCustom(qualifier, inverter, imw, ar, k) |
full control incl. sensitivity |
DimenPower.PWSdp(context, value) |
static form · WarmupCache(ctx) pre-heats |
v.ToPowerDp/Px(v, ctx, …) |
generic kernel entry |
💡 When to use
| Scenario | Recommendation |
|---|---|
| Large-screen emphasis (media, dashboards) | ✅ Power |
| Proportional-to-screen layouts | Percent |
| Conservative, near-linear scaling | core Scaled / Logarithmic |
⚡ Performance
Same engine as the core: snapshot-partitioned cache, allocation-free fast lanes,
automatic invalidation on configuration changes. Custom k values bypass caching by design.
📚 Full package family
AppDimens.Net · Percent · Auto · Logarithmic · Fluid · Interpolated · Diagonal · Perimeter · Fill · Fit · Density · Resize · Units · Maui · Sdk meta-package
Apache-2.0 — © Jean Bodenberg · Repository · Formulas are bit-a-bit ports of appdimens-kmp
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- AppDimens.Net (>= 3.6.0)
-
net8.0
- AppDimens.Net (>= 3.6.0)
-
net9.0
- AppDimens.Net (>= 3.6.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on AppDimens.Net.Power:
| Package | Downloads |
|---|---|
|
AppDimens.Net.Sdk
AppDimens .NET meta-package ("BOM"): pulls the principal library plus every strategy module with a single reference. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.6.0 | 87 | 8/23/2026 |