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
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AppDimens.Net.Power" Version="3.6.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AppDimens.Net.Power" Version="3.6.0" />
                    
Directory.Packages.props
<PackageReference Include="AppDimens.Net.Power" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AppDimens.Net.Power --version 3.6.0
                    
#r "nuget: AppDimens.Net.Power, 3.6.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AppDimens.Net.Power@3.6.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AppDimens.Net.Power&version=3.6.0
                    
Install as a Cake Addin
#tool nuget:?package=AppDimens.Net.Power&version=3.6.0
                    
Install as a Cake Tool

<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).

NuGet License .NET

</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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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