小编mar*_*777的帖子

将点放在弧形中

我有一个圆弧,目前属于该弧的圆点使用d3.layout.pack()来放置它们,但这只是将圆弧中的圆点明显地放在一个圆圈中.

有没有办法让我可以将圆点放在圆弧中以使用圆弧的整个空间(目前它只是将圆弧中心的点聚集成一个圆圈)

我试着搞乱填充,但显然它不是我需要的,因为它可以将圆点推出弧线的边界

谢谢马克

编辑 - 代码 代码只是标准的布局包代码.我试图看看是否有一种方法可以将圆点中的点"打包".

var pack = d3.layout.pack()
.sort(null)
.size([_config.RingWidth, _config.RingWidth])//config.RingWidth is the width of the arc
.value(function (d) {
  return 1 * Math.random();//the dots are all the same size
});
Run Code Online (Sandbox Code Playgroud)

然后处理这些点并使用包

dots2 = new Array();
for (var clusterNum = 0; clusterNum < _hierarchy.Dots.dotsArray.length; clusterNum++) {
    dots2[clusterNum] = svg.selectAll(".node" + clusterNum)
      .data(pack.nodes(_hierarchy.Dots.dotsArray[clusterNum])
      .filter(function (d) {
         return !d.children;
}));
Run Code Online (Sandbox Code Playgroud)

当前

通缉

顶部图像是它当前的功能,底部是我希望它如何运作.正如你在大弧中所看到的那样,它看起来很奇怪,它不能使用所有的弧线,但我失去了如何实现这一点(我尝试填充包但但它超出了弧的边界).

干杯

javascript svg d3.js circle-pack

8
推荐指数
1
解决办法
284
查看次数

7
推荐指数
2
解决办法
2万
查看次数

为什么我需要设置一个 DefaultForbidScheme

在 WebAPI .net 核心项目中,我创建了一个验证 api 密钥的中间件类。通过验证它,它检索密钥在 invoke 方法中拥有的权限(用户或管理员)。

我通过一个开关来设置原理

GenericIdentity identity = new GenericIdentity("API");
GenericPrincipal principle = null;

          //we have a valid api key, so set the role permissions of the key
          switch (keyValidatorRes.Role)
           {
               case Roles.User:
                    principle = new GenericPrincipal(identity, new[] { "User" });  
                    context.User = principle;
                    break;
                case Roles.Admin:
                    principle = new GenericPrincipal(identity, new[] { "Admin" });         
                    context.User = principle;
                    break;
                default:
                    principle = new GenericPrincipal(identity, new[] { "Other" });
                    context.User = principle;
                    break;
                    }
Run Code Online (Sandbox Code Playgroud)

在控制器方法上我有
[Authorize(Roles = …

.net-core asp.net-core

6
推荐指数
1
解决办法
1968
查看次数

使用 System.Text.Json 将 json 数组反序列化为 C# 对象

我有一些从 API 返回的 JSON,其形式为

[
    {
        "param1":"value",
        "param2":"value2",
        ...
    },
    {
        "param1":"value",
        "param2":"value2",
         ...
    }
]
Run Code Online (Sandbox Code Playgroud)

我有一堂课Foo

public class Foo
{
    public string param1 { get; set; }
    public string param2 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我正在使用System.Text.Json图书馆。

如果我像这样反序列化:

var output = JsonSerializer.Deserialize<List<Foo>>(JsonStr)
Run Code Online (Sandbox Code Playgroud)

一切正常,在“输出”中我有一个Foo.

但是,我想反序列化到另一个类中,这样我就可以从基类进行一些继承,该基类可以执行一些检查以查看是否有数据和其他一些位和鲍勃。

public class Bar : BarBase
{
    public List<Foo> data { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

显然,如果我尝试反序列化为Bar,它会抛出一个错误,指出它无法将 JSON 映射到对象。

是否有任何属性可用于声明 JSON 应映射到“数据”,或者是否有其他方法可以实现此目的?

干杯马克

.net c# json .net-core

5
推荐指数
1
解决办法
2630
查看次数

Windows Phone 8模拟器未显示地图

我正在尝试创建一个Windows Phone 8应用程序,但模拟器不会显示我的地图.我得到的就是这个.

没有地图土地 你可以看到没有显示陆地,也没有显示道路.我已经四处寻找并且没有任何东西,仿真器的位置设置为土地应该显示的区域.

如果我在我的设备上运行它,它工作正常,地图加载.

这可能是由于端口阻塞问题或类似的东西.

干杯马克

windows-phone-8 windows-phone-8-emulator

1
推荐指数
1
解决办法
1777
查看次数