From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: from cgl.ntg.nl (Cgl.ntg.nl [5.39.185.202]) by inbox.vuxu.org (Postfix) with ESMTP id AE859214B9 for ; Fri, 10 Jan 2025 01:19:04 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id 0819F484CB1 for ; Fri, 10 Jan 2025 01:18:42 +0100 (CET) Authentication-Results: cgl.ntg.nl (amavisd-new); dkim=pass (1024-bit key) reason="pass (just generated, assumed good)" header.d=ntg.nl DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ntg.nl; h= content-transfer-encoding:content-type:content-type :list-unsubscribe:list-subscribe:list-post:list-owner:list-help :list-archive:archived-at:list-id:subject:subject:reply-to :precedence:in-reply-to:from:from:references:content-language :user-agent:mime-version:date:date:message-id:received:received :received:received:received:received:received; s=cgl; t= 1736468321; x=1739060322; bh=wDM5+DgYMvHB7A3DmPhf3chZ3+fShzz4RW1 7QUnqE6Y=; b=hz7Ok3L8xU607mRWE8y3BVCYzeU6TLbBeGY5lBSxmGEalBb5xoj Sj9q+CdnZPFP/Biol0irQ1ot1QO0WQfKYwhg8ZERH15DqN8Y2dQC9aINpMUaZQIJ Tn99Ogs/fgGnq2ARHXnZ/22ixEQ0WbjhCjJWLAisXb9aJq6XOHo5ZXec= X-Virus-Scanned: Debian amavisd-new at cgl.ntg.nl Authentication-Results: cgl.ntg.nl (amavisd-new); dkim=fail (2048-bit key) reason="fail (message has been altered)" header.d=xs4all.nl Received: from cgl.ntg.nl ([127.0.0.1]) by localhost (cgl.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0q_nB1K3GljT for ; Fri, 10 Jan 2025 01:18:41 +0100 (CET) Received: from cgl.ntg.nl (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id 6B7B3484A09 for ; Fri, 10 Jan 2025 01:17:57 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id 54DD04848A0 for ; Fri, 10 Jan 2025 01:17:37 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at cgl.ntg.nl Received: from cgl.ntg.nl ([127.0.0.1]) by localhost (cgl.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1ZcBSZc65f-6 for ; Fri, 10 Jan 2025 01:17:36 +0100 (CET) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=195.121.94.184; helo=ewsoutbound.kpnmail.nl; envelope-from=j.hagen@xs4all.nl; receiver= Received: from ewsoutbound.kpnmail.nl (ewsoutbound.kpnmail.nl [195.121.94.184]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by cgl.ntg.nl (Postfix) with ESMTPS id DADBB48489E for ; Fri, 10 Jan 2025 01:17:36 +0100 (CET) X-KPN-MessageId: 87e8d90d-cee8-11ef-9401-005056994fde Received: from smtp.kpnmail.nl (unknown [10.31.155.5]) by ewsoutbound.so.kpn.org (Halon) with ESMTPS id 87e8d90d-cee8-11ef-9401-005056994fde; Fri, 10 Jan 2025 01:19:17 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xs4all.nl; s=xs4all01; h=content-type:from:to:subject:mime-version:date:message-id; bh=OZjwBNpjl/O+hWCP/oHBqRldXtEjGxhHNErYGv3D1Gk=; b=XzbCB3Z9ZFCVU1v3Ug2e1WKMXu5B5wCYWsj0eTrV6z1r43KOzGHhqam0ealIga+9OIlKGgjAIgJc5 NmIJbMDSCR2JqV5XbV0jMOMdV6Yi3ch2RhVX4u2RV4FOoS3lMR0X/1EpNCH418KT9z2TUuUmRbKLOx gXuXAB4RNh97jjWIAIJUPJVvQgRwZsH3jQ3DMhE6xUZOeaV/FfVAjhjZ/nDTd7HLC+Ahmp2LAGuGEi vjpW957vGXsdzmqLyIXb6L5OXLI4Kzn62xuxh6PMeOydL5kKyurKMAp7qOaeyE7aYs3aKX5ShhIaYA yj3BmMlecqMkFfyAQLtXzvdKsQyyyAg== X-KPN-MID: 33|KamSjRUChnVgEmKGXHcckVrOZls8YVJa6cVvGiOhgZvLiBxA0a5xmLy6GEhFyxd qekAyu5VNpXKj8PiVIF+APIK7XnSpz47MYJVvdsaiHms= X-KPN-VerifiedSender: Yes X-CMASSUN: 33|Pb56fl19m6KxhAoBLIVq1yNm3JgMnV5nGC0x8mK7Zaz7bjI6pyyZs3UGY0i26Tv XsW/bm0+tgyKbtak1Y90Evw== X-Originating-IP: 213.125.29.162 Received: from [10.100.1.105] (d57d1da2.static.ziggozakelijk.nl [213.125.29.162]) by smtp.xs4all.nl (Halon) with ESMTPSA id 4b52230f-cee8-11ef-b697-00505699b758; Fri, 10 Jan 2025 01:17:36 +0100 (CET) Message-ID: <868b0721-4789-4361-8b77-2b0c6ba4b270@xs4all.nl> Date: Fri, 10 Jan 2025 01:17:35 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: nl To: Florent Michel , mailing list for ConTeXt users References: From: Hans Hagen In-Reply-To: Message-ID-Hash: HKOZVU7KLB77HLHSIX5ONKACWG47LRH5 X-Message-ID-Hash: HKOZVU7KLB77HLHSIX5ONKACWG47LRH5 X-MailFrom: j.hagen@xs4all.nl X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.9 Precedence: list Reply-To: mailing list for ConTeXt users Subject: [NTG-context] Re: Functional shading with MetaPost / MetaFun List-Id: mailing list for ConTeXt users Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 T24gMS85LzIwMjUgMTA6NDQgUE0sIEZsb3JlbnQgTWljaGVsIHdyb3RlOg0KPiBIaSwNCj4gDQo+ IEkgd2FzIHRyeWluZyB0byBzZWUgaWYgSSBjb3VsZCB1c2XCoE1ldGFGdW4gLyBNZXRhUG9zdCBh cyBteSBtYWluIHRvb2wgDQo+IGZvciBnZW5lcmF0aW5nIGZpZ3VyZXMuIEkgcmVhbGx5IGxpa2Ug aXRzIGNsb3NlIGludGVncmF0aW9uIHdpdGggDQo+IENvblRlWHQsIHNwZWVkLCBhbmQgZXhwcmVz c2l2aXR5IG1ha2luZyBpdCzCoGV2ZW4gZm9yIGEgYmVnaW5uZXIgbGlrZSBtZSwgDQo+IGHCoCBw bGVhc3VyZSB0b8Kgd29yayB3aXRoLg0KPiANCj4gT25lIGRpZmZpY3VsdHkgSSBlbmNvdW50ZXJl ZCBpcyBmb3IgZ2VuZXJhdGluZyAyRCBmdW5jdGlvbmFsIHNoYWRpbmdzLiANCj4gRm9yIGluc3Rh bmNlLCBJIGFtIG5vdCBzdXJlIHdoYXQgaXMgdGhlIGJlc3Qgd2F5IHRvIHJlcHJvZHVjZSB0aGUg DQo+IGZvbGxvd2luZyBwZ2ZwbG90cyBwaWN0dXJlIGluIE1ldGFQb3N0Og0KPiANCj4gX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+ IFx1c2Vtb2R1bGVbcGdmcGxvdHNdDQo+IFxwZ2ZwbG90c3NldHt3aWR0aD0xMGNtLGNvbXBhdD0x LjE4fQ0KPiBcdXNlcGdmcGxvdHNsaWJyYXJ5e3BhdGNocGxvdHN9DQo+IA0KPiBcc3RhcnR0ZXh0 DQo+IA0KPiBcc3RhcnRURVhwYWdlDQo+IFxzdGFydHRpa3pwaWN0dXJlDQo+IFxzdGFydGF4aXNb DQo+ICDCoCDCoCBoaWRlIGF4aXM9dHJ1ZSwNCj4gIMKgIMKgIGF4aXMgbGluZXM9bm9uZSxoaWRl IGF4aXMsDQo+ICDCoCDCoCBlbmxhcmdlbGltaXRzPWZhbHNlLA0KPiAgwqAgwqAgc2NhbGUgb25s eSBheGlzLA0KPiAgwqAgwqAgY2xpcCBib3VuZGluZyBib3g9dXBwZXIgYm91bmQsDQo+ICDCoCDC oCBjbGlwPXRydWUsDQo+IF0NCj4gIMKgIMKgIFxhZGRwbG90Ww0KPiAgwqAgwqAgwqAgwqAgcGF0 Y2gsDQo+ICDCoCDCoCDCoCDCoCBzaGFkZXI9aW50ZXJwLA0KPiAgwqAgwqAgwqAgwqAgbWVzaC9j b2xvciBpbnB1dD1leHBsaWNpdCwNCj4gIMKgIMKgIMKgIMKgIGRhdGEgY3M9cG9sYXIsDQo+ICDC oCDCoCBdDQo+ICDCoCDCoCBjb29yZGluYXRlcyB7DQo+ICDCoCDCoCDCoCDCoCAoOTAsNCkgW2Nv bG9yPXJlZF0NCj4gIMKgIMKgIMKgIMKgICgyMTAsNCkgW2NvbG9yPWdyZWVuXQ0KPiAgwqAgwqAg wqAgwqAgKC0zMCw0KSBbY29sb3I9Ymx1ZV0NCj4gIMKgIMKgIH07DQo+IFxzdG9wYXhpcw0KPiBc c3RvcHRpa3pwaWN0dXJlDQo+IFxzdG9wVEVYcGFnZQ0KPiBcc3RvcHRleHQNCj4gX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQo+IA0K PiBPbmUgaWRlYSBpcyB0byBkcmF3IGHCoHNlcXVlbmNlIG9mIHRyaWFuZ2xlcywgZWFjaCB3aXRo IGEgbGluZWFyIGdyYWRpZW50Og0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gXHN0YXJ0TVBwYWdlDQo+ICDCoCBkZWYgTGlu ZWFySW50VHJpYW5nbGUoZXhwciBwYSwgcGIsIHBjLCBjb2xhLCBjb2xiLCBjb2xjLCBuX2l0ZXIp ID0NCj4gIMKgIMKgIGZvciBpID0gbl9pdGVyIHN0ZXAgLTEgdW50aWwgMSA6DQo+ICDCoCDCoCDC oCBwYXRoIHA7DQo+ICDCoCDCoCDCoCB4IDo9IGkgLyBuX2l0ZXI7DQo+ICDCoCDCoCDCoCB5IDo9 IChpIC0gMC41KSAvIG5faXRlcjsNCj4gIMKgIMKgIMKgIHAgOj0gcGEgLS0gKHBhICsgeCAqIChw YiAtIHBhKSkgLS0gKHBhICsgeCAqIChwYyAtIHBhKSkgLS0gY3ljbGU7DQo+ICDCoCDCoCDCoCBz aCA6PSBkZWZpbmVfbGluZWFyX3NoYWRlKHBhICsgeSAqIChwYiAtIHBhKSwgcGEgKyB5ICogKHBj IC0gcGEpLA0KPiAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgKDEgLSB5KSAqIGNvbGEgKyB5ICogY29sYiwgKDEgLSB5KSAqIA0KPiBjb2xhICsgeSAqIGNv bGMpOw0KPiAgwqAgwqAgwqAgZmlsbCBwIHdpdGhzaGFkZSBzaDsNCj4gIMKgIMKgIGVuZGZvcg0K PiAgwqAgZW5kZGVmOw0KPiANCj4gIMKgIGNvbG9yIGNvbGEsIGNvbGIsIGNvbGM7DQo+ICDCoCBj b2xhIDo9ICgwLDEsMCk7DQo+ICDCoCBjb2xiIDo9ICgxLDAsMCk7DQo+ICDCoCBjb2xjIDo9ICgw LDAsMSk7DQo+IA0KPiAgwqAgTGluZWFySW50VHJpYW5nbGUoKDAsMCksICg1MCw1MCooMyoqMC41 KSksICgxMDAsMCksIGNvbGEsIGNvbGIsIGNvbGMsIA0KPiAzMCk7DQo+IFxzdG9wTVBwYWdlDQo+ IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXw0KPiANCj4gb3IgdG8gdXNlIGEgc2xpZ2h0IHZhcmlhdGlvbiAoZGVjb21wb3NpbmcgdGhl IHRyaWFuZ2xlIGluIHRocmVlIHNvIHRoYXQgDQo+IHRoZSBjb2xvciBpcyDigJhyaWdodOKAmSkg YWxvbmcgZWFjaCBlZGdlOg0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18NCj4gXHN0YXJ0TVBwYWdlDQo+ICDCoCBkZWYgTGluZWFy SW50VHJpYW5nbGVCKGV4cHIgcGEsIHBiLCBwYywgY29sYSwgY29sYiwgY29sYywgbl9pdGVyKSA9 DQo+ICDCoCDCoCBjb2xvciBjZW50cmVfY29sb3I7DQo+ICDCoCDCoCBjZW50cmVfY29sb3IgOj0g KGNvbGEgKyBjb2xiICsgY29sYykgLyAzOw0KPiAgwqAgwqAgTGluZWFySW50VHJpYW5nbGUoKHBh ICsgcGIgKyBwYykgLyAzLCBwYSwgcGIsIGNlbnRyZV9jb2xvciwgY29sYSwgDQo+IGNvbGIsIG5f aXRlcik7DQo+ICDCoCDCoCBMaW5lYXJJbnRUcmlhbmdsZSgocGEgKyBwYiArIHBjKSAvIDMsIHBi LCBwYywgY2VudHJlX2NvbG9yLCBjb2xiLCANCj4gY29sYywgbl9pdGVyKTsNCj4gIMKgIMKgIExp bmVhckludFRyaWFuZ2xlKChwYSArIHBiICsgcGMpIC8gMywgcGMsIHBhLCBjZW50cmVfY29sb3Is IGNvbGMsIA0KPiBjb2xhLCBuX2l0ZXIpOw0KPiAgwqAgZW5kZGVmOw0KPiANCj4gIMKgIGNvbG9y IGNvbGEsIGNvbGIsIGNvbGM7DQo+ICDCoCBjb2xhIDo9ICgwLDEsMCk7DQo+ICDCoCBjb2xiIDo9 ICgxLDAsMCk7DQo+ICDCoCBjb2xjIDo9ICgwLDAsMSk7DQo+IA0KPiAgwqAgTGluZWFySW50VHJp YW5nbGVCKCgwLDApLCAoNTAsNTAqKDMqKjAuNSkpLCAoMTAwLDApLCBjb2xhLCBjb2xiLCANCj4g Y29sYywgMTApOw0KPiBcc3RvcE1QcGFnZQ0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gDQo+IFRoaXMgYXBwcm9hY2ggZ2l2 ZXMg4oCYZ29vZCBlbm91Z2jigJkgcmVzdWx0cyBmb3IgbGFyZ2UgdmFsdWVzIG9mIG5faXRlci4g DQo+IEhvd2V2ZXIsIHRoZSBzaXplIG9mIHRoZSBnZW5lcmF0ZWQgcGRmIGlzIHNvbWV3aGF0IGxh cmdlciB0aGFuIHRoZSANCj4gcGdmcGxvdHMgdmVyc2lvbjogZm9yIGluc3RhbmNlLCB0aGUgZmly c3QgdmVyc2lvbiBhYm92ZSBnZW5lcmF0ZXMgYSA1S2lCIA0KPiBwZGYgdmVyc3VzIDMuOEtpQiBm b3IgdGhlIHBnZnBsb3RzIHZlcnNpb24sIHdoaWxlIGJlaW5nIHNvbWV3aGF0IGxlc3MgDQo+IGFj Y3VyYXRlLiBJbmNyZWFzaW5nIG5faXRlciB0byAxMDAgZ2l2ZXMgYSByZXN1bHQgd2hpY2ggaXMg KHRvIG15IG5vdC0gDQo+IHZlcnktZ29vZCBleWVzKSB2ZXJ5IGNsb3NlIHRvIHRoZSBwZ2ZwbG90 cyB2ZXJzaW9uIGJ1dCB0aGUgcGRmIHNpemUgDQo+IGluY3JlYXNlcyB0byBhYm91dCAyMEtpQiwg YW5kIHRha2VzIHNpZ25pZmljYW50bHkgbG9uZ2VyIHRvIHJlbmRlciB1c2luZyANCj4gTXVQREYu DQo+IA0KPiBJJ2QgYmUgZ3JhdGVmdWwgaWYgc29tZW9uZSBjb3VsZCBwb2ludCBtZSB0b8KgYSBi ZXR0ZXLCoHdheSB0byBnZW5lcmF0ZSANCj4gc3VjaCBzaGFkaW5ncyBpbiBNZXRhRnVuIC8gTWV0 YVBvc3QuDQoNCnRoZXNlIHRoaW5ncyBjYW4gb2Z0ZW4gYmUgZm91bmQgaW4gdGhlIHRlc3Qgc3Vp dGUNCg0KXHN0YXJ0TVBwYWdlDQogICAgZmlsbCB1bml0dHJpYW5nbGUgcm90YXRlZCA5MCB4eXNj YWxlZCAoMjAwLDEwMCkNCiAgICAgICAgd2l0aHNoYWRlbWV0aG9kICJsaW5lYXIiDQogICAgICAg IHdpdGhzaGFkZWNlbnRlcm9uZWZyYWN0aW9uICgwLDEpDQogICAgICAgIHdpdGhzaGFkZWNlbnRl cnR3b2ZyYWN0aW9uICgwLDApDQogICAgICAgIHdpdGhzaGFkZXN0ZXAgKA0KICAgICAgICAgICAg d2l0aHNoYWRlZnJhY3Rpb24gMA0KICAgICAgICAgICAgd2l0aHNoYWRlY29sb3JzIChncmVlbiwg Z3JlZW4pDQogICAgICAgICkNCiAgICAgICAgd2l0aHNoYWRlc3RlcCAoDQogICAgICAgICAgICB3 aXRoc2hhZGVmcmFjdGlvbiAwLjc1DQogICAgICAgICAgICB3aXRoc2hhZGVjb2xvcnMgKGJsdWUs IGdyZWVuKQ0KICAgICAgICApDQogICAgICAgIHdpdGhzaGFkZXN0ZXAgKA0KICAgICAgICAgICAg d2l0aHNoYWRlZnJhY3Rpb24gMC4yNQ0KICAgICAgICAgICAgd2l0aHNoYWRlY29sb3JzIChncmVl biwgYmx1ZSkNCiAgICAgICAgKQ0KICAgICAgICB3aXRoc2hhZGVzdGVwICgNCiAgICAgICAgICAg IHdpdGhzaGFkZWZyYWN0aW9uIDENCiAgICAgICAgICAgIHdpdGhzaGFkZWNvbG9ycyAoZ3JlZW4s IHJlZCkNCiAgICAgICAgKQ0KICAgICA7DQpcc3RvcE1QcGFnZQ0KDQoNCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSGFucyBIYWdlbiB8IFBSQUdN QSBBREUNCiAgICAgICAgICAgICAgIFJpZGRlcnN0cmFhdCAyNyB8IDgwNjEgR0ggSGFzc2VsdCB8 IFRoZSBOZXRoZXJsYW5kcw0KICAgICAgICB0ZWw6IDAzOCA0NzcgNTMgNjkgfCB3d3cucHJhZ21h LWFkZS5ubCB8IHd3dy5wcmFnbWEtcG9kLm5sDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSWYgeW91ciBxdWVzdGlvbiBpcyBvZiBpbnRlcmVzdCB0byBvdGhlcnMgYXMgd2Vs bCwgcGxlYXNlIGFkZCBhbiBlbnRyeSB0byB0aGUgV2lraSEKCm1haWxsaXN0IDogbnRnLWNvbnRl eHRAbnRnLm5sIC8gaHR0cHM6Ly9tYWlsbWFuLm50Zy5ubC9tYWlsbWFuMy9saXN0cy9udGctY29u dGV4dC5udGcubmwKd2VicGFnZSAgOiBodHRwczovL3d3dy5wcmFnbWEtYWRlLm5sIC8gaHR0cHM6 Ly9jb250ZXh0LmFhbmhldC5uZXQgKG1pcnJvcikKYXJjaGl2ZSAgOiBodHRwczovL2dpdGh1Yi5j b20vY29udGV4dGdhcmRlbi9jb250ZXh0Cndpa2kgICAgIDogaHR0cHM6Ly93aWtpLmNvbnRleHRn YXJkZW4ubmV0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCg==