Pakete, Repositories und App-Kategorien suchen

Paketdetailsv0.0.5

spider_web_control

Ein Flutter-Paket zum Erstellen interaktiver, spinnennetzartiger Steuerelemente mit anpassbaren Knoten und Verbindungen.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
14
Likes
2
Pub-Punkte
160

Paket installieren

flutter pub add spider_web_control

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Ein Flutter-Paket, das Entwicklern ermöglicht, interaktive, spinnennetzartige Steuerelemente zu erstellen. Es erlaubt die Anpassung von Knoten und dynamische Verbindungen zwischen ihnen, ideal zur Visualisierung von Beziehungen oder zum Erstellen von Spiel-Oberflächen mit radialen Layouts. Das Paket unterstützt mehrere Plattformen wie Mobile, Web und Desktop und ist somit vielseitig für plattformübergreifende Anwendungen geeignet. Mit intuitiven APIs vereinfacht es die Implementierung komplexer, animierter netzwerkartiger Schnittstellen.

Anwendungsfälle

  • Interaktive Benutzeroberflächen mit radialen Layouts
  • Spieldesign für netzwerkbasierte Mechaniken
  • Visuelle Datenbeziehungsanzeige
  • Anpassbare Knoten- und Verbindungs-Schnittstellen
  • Lernhilfen für die Graphentheorie
  • Dynamische Schnittstellenprototypisierung

Hauptmerkmale

  • Anpassbare Knoten und Verbindungen
  • Animierte webartige Interaktionen
  • Plattformübergreifende Unterstützung
  • erweiterbarer Widget-Entwurf
  • Reaktionssicheres Layout-Handling
  • Echtzeit-Interaktion mit dem Benutzer

Geeignet für

  • Spieleentwickler
  • UI/UX-Designer
  • Entwickler von Bildungs-Apps
  • Datenvisualisierungsprojekte
  • Interaktive Prototypen-Baukästen

Hinweise

  • Die Leistung kann bei hohen Knotenanzahlen variieren
  • Erfordert sorgfältige Layout-Verwaltung auf kleinen Bildschirmen
  • Beschränkte Dokumentation über grundlegende Beispiele hinaus
  • Am besten geeignet für statische oder langsam veränderliche Netzwerke
  • Möglicherweise sind zusätzliche Stile für Produktionsanwendungen erforderlich
  • Nicht für Echtzeit-Mehrspieler-Szenarien optimiert

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

Spider Web Control

Static Badge Static Badge Static Badge

Demo

A customizable spider web control widget for Flutter that detects touch directions with interactive visual effects.

Features

  • Customizable appearance: Change colors, size, and web structure
  • Direction detection: Get callbacks for 8-directional touch input (R, L, F, B, FR, FL, BR, BL)
  • Interactive effects: Web threads warp and bend around touch points
  • Flexible integration: Works with any connection type (Bluetooth, HTTP, WebSocket, etc.)
  • Theme support: Built-in dark and light theme configurations

Installation

Add this to your package's pubspec.yaml file:

dependencies:
  spider_web_control: ^0.0.2

Usage

Basic Usage
import 'package:spider_web_control/spider_web_control.dart';

SpiderWebControl(
  onDirectionChanged: (direction) {
    print('Direction: $direction');
    // Handle direction change (e.g., send to device)
  },
)
Custom Configuration
SpiderWebControl(
  config: SpiderWebConfig(
    size: 400.0,
    threadColor: Colors.cyan,
    dewDropColor: Colors.lightBlue,
    centerThreshold: 100.0,
    sendInterval: Duration(milliseconds: 500),
  ),
  onDirectionChanged: (direction) {
    // Your custom logic here
  },
  onTouchStart: () => print('Touch started'),
  onTouchEnd: () => print('Touch ended'),
)
Using with Bluetooth
class MyBluetoothController extends StatelessWidget {
  final BluetoothConnection connection;

  MyBluetoothController({required this.connection});

  @override
  Widget build(BuildContext context) {
    return SpiderWebControl(
      config: SpiderWebConfig.darkTheme(size: 350.0),
      onDirectionChanged: (direction) {
        // Send direction to Bluetooth device
        connection.output.add(Uint8List.fromList(direction.codeUnits));
      },
    );
  }
}
Theme Examples
// Dark theme
SpiderWebControl(
  config: SpiderWebConfig.darkTheme(size: 300.0),
  onDirectionChanged: (direction) => handleDirection(direction),
)

// Light theme
SpiderWebControl(
  config: SpiderWebConfig.lightTheme(size: 300.0),
  onDirectionChanged: (direction) => handleDirection(direction),
)

// Custom theme
SpiderWebControl(
  config: SpiderWebConfig(
    size: 320.0,
    threadColor: Colors.purple,
    minorThreadColor: Colors.purpleAccent,
    dewDropColor: Colors.pink,
    radialDivisions: 48,
    circleDivisions: 30,
  ),
  onDirectionChanged: (direction) => handleDirection(direction),
)

Configuration Options

Property Type Default Description
size double 300.0 Size of the spider web widget
threadColor Color Colors.blue Main thread color
minorThreadColor Color Colors.blueGrey Minor thread color
dewDropColor Color Colors.lightBlue Dew drop accent color
centerThreshold double 80.0 Dead zone radius in center
sendInterval Duration Duration(seconds: 1) Minimum time between direction callbacks
radialDivisions int 36 Number of radial web divisions
circleDivisions int 25 Number of circular web divisions

Direction Values

The widget returns these direction strings:

  • 'R' - Right
  • 'L' - Left
  • 'F' - Forward/Up
  • 'B' - Back/Down
  • 'FR' - Forward-Right
  • 'FL' - Forward-Left
  • 'BR' - Back-Right
  • 'BL' - Back-Left
  • 'Disabled Zone' - Center area (not sent to callback)

License

MIT License - see LICENSE file for details.

Kategorien

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.